Changed version to 0.0.2-rc1 and added benchmarks to distribution.

This commit is contained in:
Abdulaziz Ghuloum 2007-11-23 20:50:28 -05:00
parent 358ba407aa
commit fb804a24f4
12 changed files with 933 additions and 49 deletions

View File

@ -1,4 +1,4 @@
AUTOMAKE_OPTIONS = foreign AUTOMAKE_OPTIONS = foreign
SUBDIRS = src scheme doc extras SUBDIRS = src scheme doc extras benchmarks
EXTRA_DIST = README COPYING GPL-3 ACKNOWLEDGMENTS EXTRA_DIST = README COPYING GPL-3 ACKNOWLEDGMENTS
dist_doc_DATA=README COPYING GPL-3 ACKNOWLEDGMENTS dist_doc_DATA=README COPYING GPL-3 ACKNOWLEDGMENTS

View File

@ -183,7 +183,7 @@ target_vendor = @target_vendor@
top_builddir = @top_builddir@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@ top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign AUTOMAKE_OPTIONS = foreign
SUBDIRS = src scheme doc extras SUBDIRS = src scheme doc extras benchmarks
EXTRA_DIST = README COPYING GPL-3 ACKNOWLEDGMENTS EXTRA_DIST = README COPYING GPL-3 ACKNOWLEDGMENTS
dist_doc_DATA = README COPYING GPL-3 ACKNOWLEDGMENTS dist_doc_DATA = README COPYING GPL-3 ACKNOWLEDGMENTS
all: config.h all: config.h

View File

@ -1,5 +1,380 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# benchmarks/Makefile. Generated from Makefile.in by configure.
all: # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
pkgdatadir = $(datadir)/ikarus
pkglibdir = $(libdir)/ikarus
pkgincludedir = $(includedir)/ikarus
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = i686-apple-darwin8.10.1
host_triplet = i686-apple-darwin8.10.1
target_triplet = i686-apple-darwin8.10.1
subdir = benchmarks
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run aclocal-1.10
AMTAR = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run tar
AUTOCONF = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run autoconf
AUTOHEADER = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run autoheader
AUTOMAKE = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run automake-1.10
AWK = awk
CC = gcc
CCAS = gcc
CCASDEPMODE = depmode=gcc3
CCASFLAGS = -g -O2
CCDEPMODE = depmode=gcc3
CFLAGS = -g -O2 -DNDEBUG -O3
CPP = gcc -E
CPPFLAGS =
CYGPATH_W = echo
DEFS = -DHAVE_CONFIG_H
DEPDIR = .deps
ECHO_C =
ECHO_N = -n
ECHO_T =
EGREP = /usr/bin/grep -E
EXEEXT =
GREP = /usr/bin/grep
INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
LDFLAGS =
LIBOBJS = ${LIBOBJDIR}lstat$U.o
LIBS = -lgmp -lgmp
LTLIBOBJS = ${LIBOBJDIR}lstat$U.lo
MAKEINFO = ${SHELL} /Users/ikarus/Work/ikarus-scheme/missing --run makeinfo
MKDIR_P = .././install-sh -c -d
OBJEXT = o
PACKAGE = ikarus
PACKAGE_BUGREPORT = aghuloum@cs.indiana.edu
PACKAGE_NAME = ikarus
PACKAGE_STRING = ikarus 0.0.2-rc1
PACKAGE_TARNAME = ikarus
PACKAGE_VERSION = 0.0.2-rc1
PATH_SEPARATOR = :
POW_LIB =
SET_MAKE =
SHELL = /bin/sh
STRIP =
VERSION = 0.0.2-rc1
abs_builddir = /Users/ikarus/Work/ikarus-scheme/benchmarks
abs_srcdir = /Users/ikarus/Work/ikarus-scheme/benchmarks
abs_top_builddir = /Users/ikarus/Work/ikarus-scheme
abs_top_srcdir = /Users/ikarus/Work/ikarus-scheme
ac_ct_CC = gcc
am__include = include
am__leading_dot = .
am__quote =
am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin
build = i686-apple-darwin8.10.1
build_alias =
build_cpu = i686
build_os = darwin8.10.1
build_vendor = apple
builddir = .
datadir = ${datarootdir}
datarootdir = ${prefix}/share
docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
dvidir = ${docdir}
exec_prefix = ${prefix}
host = i686-apple-darwin8.10.1
host_alias =
host_cpu = i686
host_os = darwin8.10.1
host_vendor = apple
htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
install_sh = $(SHELL) /Users/ikarus/Work/ikarus-scheme/install-sh
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
localstatedir = ${prefix}/var
mandir = ${datarootdir}/man
mkdir_p = $(top_builddir)/./install-sh -c -d
oldincludedir = /usr/include
pdfdir = ${docdir}
prefix = /Users/ikarus/.opt/
program_transform_name = s,x,x,
psdir = ${docdir}
sbindir = ${exec_prefix}/sbin
sharedstatedir = ${prefix}/com
srcdir = .
sysconfdir = ${prefix}/etc
target = i686-apple-darwin8.10.1
target_alias =
target_cpu = i686
target_os = darwin8.10.1
target_vendor = apple
top_builddir = ..
top_srcdir = ..
EXTRA_DIST = README bench.ss benchall.ss rn100 parsing-data.ss \
summarize.pl rnrs-benchmarks.ss bib simplex.ss \
rnrs-benchmarks/slatex-data/test.tex \
rnrs-benchmarks/slatex-data/slatex.sty \
rnrs-benchmarks/ack.ss \
rnrs-benchmarks/array1.ss \
rnrs-benchmarks/bibfreq.ss \
rnrs-benchmarks/boyer.ss \
rnrs-benchmarks/browse.ss \
rnrs-benchmarks/cat.ss \
rnrs-benchmarks/compiler.ss \
rnrs-benchmarks/conform.ss \
rnrs-benchmarks/cpstak.ss \
rnrs-benchmarks/ctak.ss \
rnrs-benchmarks/dderiv.ss \
rnrs-benchmarks/deriv.ss \
rnrs-benchmarks/destruc.ss \
rnrs-benchmarks/diviter.ss \
rnrs-benchmarks/divrec.ss \
rnrs-benchmarks/dynamic.src.ss \
rnrs-benchmarks/dynamic.ss \
rnrs-benchmarks/earley.ss \
rnrs-benchmarks/fft.ss \
rnrs-benchmarks/fib.ss \
rnrs-benchmarks/fibc.ss \
rnrs-benchmarks/fibfp.ss \
rnrs-benchmarks/fpsum.ss \
rnrs-benchmarks/gcbench.ss \
rnrs-benchmarks/gcold.ss \
rnrs-benchmarks/graphs.ss \
rnrs-benchmarks/lattice.ss \
rnrs-benchmarks/matrix.ss \
rnrs-benchmarks/maze.ss \
rnrs-benchmarks/mazefun.ss \
rnrs-benchmarks/mbrot.ss \
rnrs-benchmarks/nbody.ss \
rnrs-benchmarks/nboyer.ss \
rnrs-benchmarks/nqueens.ss \
rnrs-benchmarks/ntakl.ss \
rnrs-benchmarks/nucleic.ss \
rnrs-benchmarks/paraffins.ss \
rnrs-benchmarks/parsing.ss \
rnrs-benchmarks/perm9.ss \
rnrs-benchmarks/peval.ss \
rnrs-benchmarks/pi.ss \
rnrs-benchmarks/pnpoly.ss \
rnrs-benchmarks/primes.ss \
rnrs-benchmarks/puzzle.ss \
rnrs-benchmarks/quicksort.ss \
rnrs-benchmarks/ray.ss \
rnrs-benchmarks/sboyer.ss \
rnrs-benchmarks/scheme.ss \
rnrs-benchmarks/simplex.ss \
rnrs-benchmarks/slatex.ss \
rnrs-benchmarks/string.ss \
rnrs-benchmarks/sum.ss \
rnrs-benchmarks/sum1.ss \
rnrs-benchmarks/sumfp.ss \
rnrs-benchmarks/sumloop.ss \
rnrs-benchmarks/tail.ss \
rnrs-benchmarks/tak.ss \
rnrs-benchmarks/takl.ss \
rnrs-benchmarks/trav1.ss \
rnrs-benchmarks/trav2.ss \
rnrs-benchmarks/triangl.ss \
rnrs-benchmarks/wc.ss
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign benchmarks/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --foreign benchmarks/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-exec-am:
install-html: install-html-am
install-info: install-info-am
install-man:
install-pdf: install-pdf-am
install-ps: install-ps-am
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am:
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
benchall:
date +"NOW: %Y-%m-%d %H:%M:%S" >>timelog date +"NOW: %Y-%m-%d %H:%M:%S" >>timelog
./benchall.ss >>timelog ../src/ikarus -b ../scheme/ikarus.boot --r6rs-script benchall.ss >>timelog
rm -f z*.scm z*.tex rm -f z*.scm z*.tex
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

73
benchmarks/Makefile.am Normal file
View File

@ -0,0 +1,73 @@
EXTRA_DIST=README bench.ss benchall.ss rn100 parsing-data.ss \
summarize.pl rnrs-benchmarks.ss bib simplex.ss \
rnrs-benchmarks/slatex-data/test.tex \
rnrs-benchmarks/slatex-data/slatex.sty \
rnrs-benchmarks/ack.ss \
rnrs-benchmarks/array1.ss \
rnrs-benchmarks/bibfreq.ss \
rnrs-benchmarks/boyer.ss \
rnrs-benchmarks/browse.ss \
rnrs-benchmarks/cat.ss \
rnrs-benchmarks/compiler.ss \
rnrs-benchmarks/conform.ss \
rnrs-benchmarks/cpstak.ss \
rnrs-benchmarks/ctak.ss \
rnrs-benchmarks/dderiv.ss \
rnrs-benchmarks/deriv.ss \
rnrs-benchmarks/destruc.ss \
rnrs-benchmarks/diviter.ss \
rnrs-benchmarks/divrec.ss \
rnrs-benchmarks/dynamic.src.ss \
rnrs-benchmarks/dynamic.ss \
rnrs-benchmarks/earley.ss \
rnrs-benchmarks/fft.ss \
rnrs-benchmarks/fib.ss \
rnrs-benchmarks/fibc.ss \
rnrs-benchmarks/fibfp.ss \
rnrs-benchmarks/fpsum.ss \
rnrs-benchmarks/gcbench.ss \
rnrs-benchmarks/gcold.ss \
rnrs-benchmarks/graphs.ss \
rnrs-benchmarks/lattice.ss \
rnrs-benchmarks/matrix.ss \
rnrs-benchmarks/maze.ss \
rnrs-benchmarks/mazefun.ss \
rnrs-benchmarks/mbrot.ss \
rnrs-benchmarks/nbody.ss \
rnrs-benchmarks/nboyer.ss \
rnrs-benchmarks/nqueens.ss \
rnrs-benchmarks/ntakl.ss \
rnrs-benchmarks/nucleic.ss \
rnrs-benchmarks/paraffins.ss \
rnrs-benchmarks/parsing.ss \
rnrs-benchmarks/perm9.ss \
rnrs-benchmarks/peval.ss \
rnrs-benchmarks/pi.ss \
rnrs-benchmarks/pnpoly.ss \
rnrs-benchmarks/primes.ss \
rnrs-benchmarks/puzzle.ss \
rnrs-benchmarks/quicksort.ss \
rnrs-benchmarks/ray.ss \
rnrs-benchmarks/sboyer.ss \
rnrs-benchmarks/scheme.ss \
rnrs-benchmarks/simplex.ss \
rnrs-benchmarks/slatex.ss \
rnrs-benchmarks/string.ss \
rnrs-benchmarks/sum.ss \
rnrs-benchmarks/sum1.ss \
rnrs-benchmarks/sumfp.ss \
rnrs-benchmarks/sumloop.ss \
rnrs-benchmarks/tail.ss \
rnrs-benchmarks/tak.ss \
rnrs-benchmarks/takl.ss \
rnrs-benchmarks/trav1.ss \
rnrs-benchmarks/trav2.ss \
rnrs-benchmarks/triangl.ss \
rnrs-benchmarks/wc.ss
benchall:
date +"NOW: %Y-%m-%d %H:%M:%S" >>timelog
../src/ikarus -b ../scheme/ikarus.boot --r6rs-script benchall.ss >>timelog
rm -f z*.scm z*.tex

380
benchmarks/Makefile.in Normal file
View File

@ -0,0 +1,380 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = benchmarks
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCAS = @CCAS@
CCASDEPMODE = @CCASDEPMODE@
CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POW_LIB = @POW_LIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = README bench.ss benchall.ss rn100 parsing-data.ss \
summarize.pl rnrs-benchmarks.ss bib simplex.ss \
rnrs-benchmarks/slatex-data/test.tex \
rnrs-benchmarks/slatex-data/slatex.sty \
rnrs-benchmarks/ack.ss \
rnrs-benchmarks/array1.ss \
rnrs-benchmarks/bibfreq.ss \
rnrs-benchmarks/boyer.ss \
rnrs-benchmarks/browse.ss \
rnrs-benchmarks/cat.ss \
rnrs-benchmarks/compiler.ss \
rnrs-benchmarks/conform.ss \
rnrs-benchmarks/cpstak.ss \
rnrs-benchmarks/ctak.ss \
rnrs-benchmarks/dderiv.ss \
rnrs-benchmarks/deriv.ss \
rnrs-benchmarks/destruc.ss \
rnrs-benchmarks/diviter.ss \
rnrs-benchmarks/divrec.ss \
rnrs-benchmarks/dynamic.src.ss \
rnrs-benchmarks/dynamic.ss \
rnrs-benchmarks/earley.ss \
rnrs-benchmarks/fft.ss \
rnrs-benchmarks/fib.ss \
rnrs-benchmarks/fibc.ss \
rnrs-benchmarks/fibfp.ss \
rnrs-benchmarks/fpsum.ss \
rnrs-benchmarks/gcbench.ss \
rnrs-benchmarks/gcold.ss \
rnrs-benchmarks/graphs.ss \
rnrs-benchmarks/lattice.ss \
rnrs-benchmarks/matrix.ss \
rnrs-benchmarks/maze.ss \
rnrs-benchmarks/mazefun.ss \
rnrs-benchmarks/mbrot.ss \
rnrs-benchmarks/nbody.ss \
rnrs-benchmarks/nboyer.ss \
rnrs-benchmarks/nqueens.ss \
rnrs-benchmarks/ntakl.ss \
rnrs-benchmarks/nucleic.ss \
rnrs-benchmarks/paraffins.ss \
rnrs-benchmarks/parsing.ss \
rnrs-benchmarks/perm9.ss \
rnrs-benchmarks/peval.ss \
rnrs-benchmarks/pi.ss \
rnrs-benchmarks/pnpoly.ss \
rnrs-benchmarks/primes.ss \
rnrs-benchmarks/puzzle.ss \
rnrs-benchmarks/quicksort.ss \
rnrs-benchmarks/ray.ss \
rnrs-benchmarks/sboyer.ss \
rnrs-benchmarks/scheme.ss \
rnrs-benchmarks/simplex.ss \
rnrs-benchmarks/slatex.ss \
rnrs-benchmarks/string.ss \
rnrs-benchmarks/sum.ss \
rnrs-benchmarks/sum1.ss \
rnrs-benchmarks/sumfp.ss \
rnrs-benchmarks/sumloop.ss \
rnrs-benchmarks/tail.ss \
rnrs-benchmarks/tak.ss \
rnrs-benchmarks/takl.ss \
rnrs-benchmarks/trav1.ss \
rnrs-benchmarks/trav2.ss \
rnrs-benchmarks/triangl.ss \
rnrs-benchmarks/wc.ss
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign benchmarks/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --foreign benchmarks/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-exec-am:
install-html: install-html-am
install-info: install-info-am
install-man:
install-pdf: install-pdf-am
install-ps: install-ps-am
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am:
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
benchall:
date +"NOW: %Y-%m-%d %H:%M:%S" >>timelog
../src/ikarus -b ../scheme/ikarus.boot --r6rs-script benchall.ss >>timelog
rm -f z*.scm z*.tex
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -35,6 +35,15 @@ To run a benchmark, type:
842 ms elapsed real time, including 78 ms collecting 842 ms elapsed real time, including 78 ms collecting
640581192 bytes allocated 640581192 bytes allocated
To run all benchmarks, type:
$ ikarus --r6rs-script benchall.ss
Or, alternatively, run `make benchall` to run all benchmarks and
append the results to the file 'timelog'.
The text that Ikarus's "time" macro and "time-it" procedure The text that Ikarus's "time" macro and "time-it" procedure
output is modeled after Chez Scheme's in order to facilitate output is modeled after Chez Scheme's in order to facilitate
interoperability with tools that parse benchmark data. interoperability with tools that parse benchmark data.

View File

@ -64,7 +64,7 @@
(run-benchmark benchmark-name (run-benchmark benchmark-name
n n
(lambda () (lambda ()
(let ((in (open-input-string input-string))) (let ((in (open-string-input-port input-string)))
(do ((x (read in) (read in)) (do ((x (read in) (read in))
(y #f x)) (y #f x))
((eof-object? x) y)))) ((eof-object? x) y))))

View File

@ -36589,3 +36589,74 @@ running stats for wc (15):
2036 ms elapsed cpu time, including 0 ms collecting 2036 ms elapsed cpu time, including 0 ms collecting
2036 ms elapsed real time, including 0 ms collecting 2036 ms elapsed real time, including 0 ms collecting
194208 bytes allocated 194208 bytes allocated
NOW: 2007-11-23 20:24:27
running stats for compile-ack:
1 collection
51 ms elapsed cpu time, including 33 ms collecting
81 ms elapsed real time, including 33 ms collecting
1370184 bytes allocated
running stats for ack (20):
no collections
1346 ms elapsed cpu time, including 0 ms collecting
1348 ms elapsed real time, including 0 ms collecting
24 bytes allocated
running stats for compile-ack:
1 collection
47 ms elapsed cpu time, including 34 ms collecting
48 ms elapsed real time, including 34 ms collecting
1370184 bytes allocated
running stats for ack (20):
no collections
1346 ms elapsed cpu time, including 0 ms collecting
1348 ms elapsed real time, including 0 ms collecting
24 bytes allocated
running stats for compile-ack:
1 collection
46 ms elapsed cpu time, including 33 ms collecting
47 ms elapsed real time, including 33 ms collecting
1370184 bytes allocated
running stats for ack (20):
no collections
1345 ms elapsed cpu time, including 0 ms collecting
1346 ms elapsed real time, including 0 ms collecting
24 bytes allocated
running stats for compile-ack:
1 collection
46 ms elapsed cpu time, including 33 ms collecting
47 ms elapsed real time, including 33 ms collecting
1370184 bytes allocated
running stats for compile-ack:
1 collection
48 ms elapsed cpu time, including 34 ms collecting
50 ms elapsed real time, including 35 ms collecting
1370184 bytes allocated
running stats for ack (20):
no collections
1348 ms elapsed cpu time, including 0 ms collecting
1351 ms elapsed real time, including 0 ms collecting
24 bytes allocated
running stats for compile-array1:
1 collection
52 ms elapsed cpu time, including 33 ms collecting
87 ms elapsed real time, including 34 ms collecting
1722224 bytes allocated
running stats for array1 (2):
80 collections
1739 ms elapsed cpu time, including 479 ms collecting
1749 ms elapsed real time, including 482 ms collecting
320011240 bytes allocated
running stats for compile-array1:
1 collection
48 ms elapsed cpu time, including 32 ms collecting
48 ms elapsed real time, including 33 ms collecting
1722224 bytes allocated
running stats for array1 (2):
80 collections
1737 ms elapsed cpu time, including 476 ms collecting
1747 ms elapsed real time, including 480 ms collecting
320011240 bytes allocated
running stats for compile-array1:
1 collection
48 ms elapsed cpu time, including 31 ms collecting
48 ms elapsed real time, including 32 ms collecting
1722224 bytes allocated

23
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for ikarus 0.0.1. # Generated by GNU Autoconf 2.61 for ikarus 0.0.2-rc1.
# #
# Report bugs to <aghuloum@cs.indiana.edu>. # Report bugs to <aghuloum@cs.indiana.edu>.
# #
@ -574,8 +574,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package. # Identity of this package.
PACKAGE_NAME='ikarus' PACKAGE_NAME='ikarus'
PACKAGE_TARNAME='ikarus' PACKAGE_TARNAME='ikarus'
PACKAGE_VERSION='0.0.1' PACKAGE_VERSION='0.0.2-rc1'
PACKAGE_STRING='ikarus 0.0.1' PACKAGE_STRING='ikarus 0.0.2-rc1'
PACKAGE_BUGREPORT='aghuloum@cs.indiana.edu' PACKAGE_BUGREPORT='aghuloum@cs.indiana.edu'
ac_unique_file="src/" ac_unique_file="src/"
@ -1227,7 +1227,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures ikarus 0.0.1 to adapt to many kinds of systems. \`configure' configures ikarus 0.0.2-rc1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1298,7 +1298,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of ikarus 0.0.1:";; short | recursive ) echo "Configuration of ikarus 0.0.2-rc1:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1384,7 +1384,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
ikarus configure 0.0.1 ikarus configure 0.0.2-rc1
generated by GNU Autoconf 2.61 generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@ -1398,7 +1398,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by ikarus $as_me 0.0.1, which was It was created by ikarus $as_me 0.0.2-rc1, which was
generated by GNU Autoconf 2.61. Invocation command line was generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@ $ $0 $@
@ -2214,7 +2214,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE=ikarus PACKAGE=ikarus
VERSION=0.0.1 VERSION=0.0.2-rc1
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -8296,7 +8296,7 @@ done
ac_config_headers="$ac_config_headers config.h" ac_config_headers="$ac_config_headers config.h"
ac_config_files="$ac_config_files Makefile src/Makefile scheme/Makefile doc/Makefile extras/Makefile" ac_config_files="$ac_config_files Makefile src/Makefile scheme/Makefile doc/Makefile extras/Makefile benchmarks/Makefile"
cat >confcache <<\_ACEOF cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure # This file is a shell script that caches the results of configure
@ -8722,7 +8722,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by ikarus $as_me 0.0.1, which was This file was extended by ikarus $as_me 0.0.2-rc1, which was
generated by GNU Autoconf 2.61. Invocation command line was generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -8775,7 +8775,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\ ac_cs_version="\\
ikarus config.status 0.0.1 ikarus config.status 0.0.2-rc1
configured by $0, generated by GNU Autoconf 2.61, configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
@ -8896,6 +8896,7 @@ do
"scheme/Makefile") CONFIG_FILES="$CONFIG_FILES scheme/Makefile" ;; "scheme/Makefile") CONFIG_FILES="$CONFIG_FILES scheme/Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"extras/Makefile") CONFIG_FILES="$CONFIG_FILES extras/Makefile" ;; "extras/Makefile") CONFIG_FILES="$CONFIG_FILES extras/Makefile" ;;
"benchmarks/Makefile") CONFIG_FILES="$CONFIG_FILES benchmarks/Makefile" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;} echo "$as_me: error: invalid argument: $ac_config_target" >&2;}

View File

@ -2,9 +2,9 @@
# Process this file with autoconf to produce a configure script. # Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59) AC_PREREQ(2.59)
AC_INIT(ikarus, 0.0.1, aghuloum@cs.indiana.edu) AC_INIT(ikarus, 0.0.2-rc1, aghuloum@cs.indiana.edu)
AC_CANONICAL_SYSTEM AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE(ikarus, 0.0.1) AM_INIT_AUTOMAKE(ikarus, 0.0.2-rc1)
AC_CONFIG_SRCDIR([src/]) AC_CONFIG_SRCDIR([src/])
@ -88,6 +88,6 @@ AC_FUNC_STRFTIME
AC_FUNC_STRTOD AC_FUNC_STRTOD
AC_CHECK_FUNCS([bzero gettimeofday memmove memset munmap setenv sqrt strerror]) AC_CHECK_FUNCS([bzero gettimeofday memmove memset munmap setenv sqrt strerror])
AC_CONFIG_HEADERS([config.h]) AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES(Makefile src/Makefile scheme/Makefile doc/Makefile extras/Makefile) AC_CONFIG_FILES(Makefile src/Makefile scheme/Makefile doc/Makefile extras/Makefile benchmarks/Makefile)
AC_OUTPUT #(Makefile src/Makefile scheme/Makefile doc/Makefile) AC_OUTPUT #(Makefile src/Makefile scheme/Makefile doc/Makefile)

View File

@ -27,9 +27,7 @@
(except (ikarus) (except (ikarus)
compile-core-expr-to-port assembler-output compile-core-expr-to-port assembler-output
current-primitive-locations eval-core) current-primitive-locations eval-core)
(ikarus intel-assembler) (ikarus intel-assembler))
;(ikarus fasl write)
)
(define-syntax struct-case (define-syntax struct-case
@ -287,17 +285,6 @@
(f (cdr lhs*) (cdr loc*)))])))]) (f (cdr lhs*) (cdr loc*)))])))])
(ungen-fml* lhs*) (ungen-fml* lhs*)
expr))))] expr))))]
;[(library-letrec*)
; (let ([bind* (cadr x)] [body (caddr x)])
; (let ([lhs* (map car bind*)]
; [loc* (map cadr bind*)]
; [rhs* (map caddr bind*)])
; (let ([nlhs* (gen-fml* lhs*)])
; (let ([expr (make-library-recbind nlhs* loc*
; (map E rhs* lhs*)
; (E body ctxt))])
; (ungen-fml* lhs*)
; expr))))]
[(case-lambda) [(case-lambda)
(let ([cls* (let ([cls*
(map (map
@ -652,9 +639,9 @@
(partition-rhs* 0 lhs* rhs* vref vcomp)]) (partition-rhs* 0 lhs* rhs* vref vcomp)])
;(unless (null? clhs*) ;(unless (null? clhs*)
; (printf "CLHS* = ~s\n" (map unparse clhs*))) ; (printf "CLHS* = ~s\n" (map unparse clhs*)))
(let ([v* (map (lambda (x) (make-constant (void))) clhs*)]) (let ([void* (map (lambda (x) (make-constant (void))) clhs*)])
(make-bind slhs* srhs* (make-bind slhs* srhs*
(make-bind clhs* v* (make-bind clhs* void*
(make-fix llhs* lrhs* (make-fix llhs* lrhs*
(if letrec? (if letrec?
(let ([t* (map (lambda (x) (unique-var 'tmp)) clhs*)]) (let ([t* (map (lambda (x) (unique-var 'tmp)) clhs*)])
@ -718,18 +705,6 @@
(make-mvcall p c))] (make-mvcall p c))]
[(forcall rator rand*) [(forcall rator rand*)
(make-forcall rator (E* rand* ref comp))] (make-forcall rator (E* rand* ref comp))]
;[(library-recbind lhs* loc* rhs* body)
; (E (make-rec*bind lhs* rhs*
; (let f ([lhs* lhs*] [loc* loc*])
; (cond
; [(null? lhs*) body]
; [(not (car loc*)) (f (cdr lhs*) (cdr loc*))]
; [else (make-seq
; (make-funcall
; (make-primref '$init-symbol-value!)
; (list (make-constant (car loc*)) (car lhs*)))
; (f (cdr lhs*) (cdr loc*)))])))
; ref comp)]
[else (error who "invalid expression" (unparse x))])) [else (error who "invalid expression" (unparse x))]))
(E x (lambda (x) (error who "free var found" x)) (E x (lambda (x) (error who "free var found" x))
void)) void))
@ -1478,7 +1453,7 @@
[(var-global-loc lhs) => [(var-global-loc lhs) =>
(lambda (loc) (lambda (loc)
(make-funcall (make-primref '$set-symbol-value!) (make-funcall (make-primref '$set-symbol-value!)
(list (make-constant loc) (Expr rhs))))] (list (make-constant loc) (Expr rhs))))]
[else [else
(make-funcall (make-primref '$vector-set!) (make-funcall (make-primref '$vector-set!)
(list lhs (make-constant 0) (Expr rhs)))])] (list lhs (make-constant 0) (Expr rhs)))])]

View File

@ -1 +1 @@
1123 1124