Abdulaziz Ghuloum
e07d8f9760
ffi callbacks sorta kinda work now.
2008-09-21 04:08:54 -04:00
Abdulaziz Ghuloum
45346ef865
- Added cp0! including:
...
- (optimize-level [0,1,2]) and ikarus -O[0,1,2]
where -O0 = no optimizations
-O1 = using old optimizer
-O2 = using the new cp0 optimizer
defaults to -O1 for now.
- (cp0-size-limit n) which is the limit of the residual size for
each inlining attempt
- (cp0-effort-limit n) which is the limit on the effort expended
for each inlining attempt
- Rewrote the syntax-match macro to make use of the same technology
used in syntax-case itself resulting in reduced code size.
- Added (system-value <symbol>) which returns the system value.
E.g., (system-value 'car) => #<procedure car>
This is pretty much the same as
(eval <symbol> (environment '(ikarus)))
except that it does not involve compiling the expression or
consulting the library/expander systems.
- Fixed the fasl loader to make it understand complex numbers.
2008-06-28 02:25:44 -07:00
Abdulaziz Ghuloum
d02e9fe035
Passing 709 tests in 64-bit mode
2008-04-12 15:06:55 -04:00
Abdulaziz Ghuloum
191a82e007
Passing 685 tests in 64bit including handling of some foreign calls.
2008-04-09 07:04:02 -04:00
Abdulaziz Ghuloum
5eaa2ff469
fixed a couple of bugs in 64bit assembler.
2008-04-08 02:22:26 -04:00
Abdulaziz Ghuloum
50888bef94
Fixes issues/warnings in bug 193327.
2008-03-15 21:06:47 -04:00
Abdulaziz Ghuloum
693ca06902
doubled marks size.
2008-02-10 04:48:27 -05:00
Abdulaziz Ghuloum
f6e5e4d5b4
Added -m32 to CFLAGS/LDFLAGS, updated copyright dates and version no.
2008-01-29 00:34:34 -05:00
Abdulaziz Ghuloum
3b8eb4bbd4
Ikarus can compile immediates in 64-bit mode.
...
It feels like I'm going through my compilers tutorial all over again!
2008-01-03 04:42:10 -05:00
Abdulaziz Ghuloum
341e53a36d
64-bit fasl files can now be produced and read.
2008-01-03 02:07:17 -05:00
Abdulaziz Ghuloum
7fb7add0ce
frame size parameters are now more modular in ikarus-data.h
2008-01-02 20:58:48 -05:00
Abdulaziz Ghuloum
e5fd23f50f
Fixed a small bug in ikarus-fasl.c that caused linux and cygwin
...
builds to segfault.
2008-01-02 18:41:25 -05:00
Abdulaziz Ghuloum
66e9cd6415
ikarus now compiles cleanly (but still unrunnable) in 64-bit mode.
2008-01-01 21:42:52 -05:00
Abdulaziz Ghuloum
e0909d76fe
changed type of ikptr to unsigned int now and removed ikint.
2008-01-01 21:08:07 -05:00
Abdulaziz Ghuloum
15ea12f915
cleanup of the C files to make all ikptr->int casts ikptr->long int
2008-01-01 04:24:36 -05:00
Abdulaziz Ghuloum
5d33921c9e
changed type of ikp from unsigned char* to char*
2007-12-23 13:37:48 -05:00
Abdulaziz Ghuloum
6386b3420a
Fixes bug 164823: ikarus.boot remaining open
2007-11-30 07:06:30 -05:00
Abdulaziz Ghuloum
a1adb6cc14
Missing initialization of code_ap and code_ep in ikarus-fasl.c
...
caused segfault on freebsd. The funny thing, I had initialization
code in a commented-out section. Fun fun.
2007-11-24 22:54:40 -05:00
Abdulaziz Ghuloum
1afade6d43
* renamed ik_alloc to ik_unsafe_alloc since it was unsafe to call it
...
in general (it did not collect on heap overflow).
2007-11-18 09:12:00 -05:00
Abdulaziz Ghuloum
90759047b3
* The fasl loader has reduced the startup mmap frenzy for code
...
objects from 5242 pages (almost one page per code object) down
to 785 pages. Special thanks to Michael Adams for counting the
the number of pages that were used and touched at startup; without
his help, I wouldn't have optimized it in about 10 minutes of
coding time.
2007-11-17 13:26:27 -05:00
Abdulaziz Ghuloum
6f576dc224
* Added license stubs to all *.ss and *.[ch] files.
2007-10-25 16:27:34 -04:00
Abdulaziz Ghuloum
d59c2b304b
major restructuring to support autotools
...
added:
Makefile
Makefile.am
Makefile.in
aclocal.m4
config.guess
config.sub
configure
configure.ac
depcomp
install-sh
missing
mkinstalldirs
src/Makefile.am
src/Makefile.in
src/scheme/
renamed:
bin/ikarus-collect.c => src/ikarus-collect.c
bin/ikarus-data.h => src/ikarus-data.h
bin/ikarus-enter.s => src/ikarus-enter.s
bin/ikarus-exec.c => src/ikarus-exec.c
bin/ikarus-fasl.c => src/ikarus-fasl.c
bin/ikarus-flonums.c => src/ikarus-flonums.c
bin/ikarus-main.c => src/ikarus-main.c
bin/ikarus-numerics.c => src/ikarus-numerics.c
bin/ikarus-print.c => src/ikarus-print.c
bin/ikarus-runtime.c => src/ikarus-runtime.c
bin/ikarus-symbol-table.c => src/ikarus-symbol-table.c
bin/ikarus-verify-integrity.c => src/ikarus-verify-integrity.c
bin/ikarus-weak-pairs.c => src/ikarus-weak-pairs.c
bin/ikarus-winmmap.c => src/ikarus-winmmap.c
bin/ikarus-winmmap.h => src/ikarus-winmmap.h
src/asm-tests.ss => src/scheme/asm-tests.ss
src/dotests.ss => src/scheme/dotests.ss
src/ikarus => src/scheme/ikarus
src/ikarus.apply.ss => src/scheme/ikarus.apply.ss
src/ikarus.bytevectors.ss => src/scheme/ikarus.bytevectors.ss
src/ikarus.cafe.ss => src/scheme/ikarus.cafe.ss
src/ikarus.chars.ss => src/scheme/ikarus.chars.ss
src/ikarus.code-objects.ss => src/scheme/ikarus.code-objects.ss
src/ikarus.codecs.ss => src/scheme/ikarus.codecs.ss
src/ikarus.collect.ss => src/scheme/ikarus.collect.ss
src/ikarus.command-line.ss => src/scheme/ikarus.command-line.ss
src/ikarus.compiler.altcogen.ss => src/scheme/ikarus.compiler.altcogen.ss
src/ikarus.compiler.ss => src/scheme/ikarus.compiler.ss
src/ikarus.control.ss => src/scheme/ikarus.control.ss
src/ikarus.date-string.ss => src/scheme/ikarus.date-string.ss
src/ikarus.fasl.ss => src/scheme/ikarus.fasl.ss
src/ikarus.fasl.write.ss => src/scheme/ikarus.fasl.write.ss
src/ikarus.fixnums.ss => src/scheme/ikarus.fixnums.ss
src/ikarus.guardians.ss => src/scheme/ikarus.guardians.ss
src/ikarus.handlers.ss => src/scheme/ikarus.handlers.ss
src/ikarus.hash-tables.ss => src/scheme/ikarus.hash-tables.ss
src/ikarus.intel-assembler.ss => src/scheme/ikarus.intel-assembler.ss
src/ikarus.io-ports.ss => src/scheme/ikarus.io-ports.ss
src/ikarus.io-primitives.ss => src/scheme/ikarus.io-primitives.ss
src/ikarus.io-primitives.unsafe.ss => src/scheme/ikarus.io-primitives.unsafe.ss
src/ikarus.io.input-files.ss => src/scheme/ikarus.io.input-files.ss
src/ikarus.io.input-strings.ss => src/scheme/ikarus.io.input-strings.ss
src/ikarus.io.output-files.ss => src/scheme/ikarus.io.output-files.ss
src/ikarus.io.output-strings.ss => src/scheme/ikarus.io.output-strings.ss
src/ikarus.lists.ss => src/scheme/ikarus.lists.ss
src/ikarus.load.ss => src/scheme/ikarus.load.ss
src/ikarus.main.ss => src/scheme/ikarus.main.ss
src/ikarus.multiple-values.ss => src/scheme/ikarus.multiple-values.ss
src/ikarus.numerics.ss => src/scheme/ikarus.numerics.ss
src/ikarus.pairs.ss => src/scheme/ikarus.pairs.ss
src/ikarus.posix.ss => src/scheme/ikarus.posix.ss
src/ikarus.predicates.ss => src/scheme/ikarus.predicates.ss
src/ikarus.pretty-print.ss => src/scheme/ikarus.pretty-print.ss
src/ikarus.promises.ss => src/scheme/ikarus.promises.ss
src/ikarus.reader.ss => src/scheme/ikarus.reader.ss
src/ikarus.records.procedural.ss => src/scheme/ikarus.records.procedural.ss
src/ikarus.singular-objects.ss => src/scheme/ikarus.singular-objects.ss
src/ikarus.sort.ss => src/scheme/ikarus.sort.ss
src/ikarus.strings.ss => src/scheme/ikarus.strings.ss
src/ikarus.structs.ss => src/scheme/ikarus.structs.ss
src/ikarus.symbols.ss => src/scheme/ikarus.symbols.ss
src/ikarus.timer.ss => src/scheme/ikarus.timer.ss
src/ikarus.trace.ss => src/scheme/ikarus.trace.ss
src/ikarus.transcoders.ss => src/scheme/ikarus.transcoders.ss
src/ikarus.unicode-data.ss => src/scheme/ikarus.unicode-data.ss
src/ikarus.vectors.ss => src/scheme/ikarus.vectors.ss
src/ikarus.writer.ss => src/scheme/ikarus.writer.ss
src/makefile.ss => src/scheme/makefile.ss
src/pass-specify-rep-primops.ss => src/scheme/pass-specify-rep-primops.ss
src/pass-specify-rep.ss => src/scheme/pass-specify-rep.ss
src/psyntax.builders.ss => src/scheme/psyntax.builders.ss
src/psyntax.compat.ss => src/scheme/psyntax.compat.ss
src/psyntax.config.ss => src/scheme/psyntax.config.ss
src/psyntax.expander.ss => src/scheme/psyntax.expander.ss
src/psyntax.internal.ss => src/scheme/psyntax.internal.ss
src/psyntax.library-manager.ss => src/scheme/psyntax.library-manager.ss
src/r6rs-records.ss => src/scheme/r6rs-records.ss
src/rationalize.ss => src/scheme/rationalize.ss
src/run-tests.ss => src/scheme/run-tests.ss
src/set-operations.ss => src/scheme/set-operations.ss
src/tests => src/scheme/tests
src/tests.libraries.ss => src/scheme/tests.libraries.ss
src/todo-r6rs.ss => src/scheme/todo-r6rs.ss
src/unicode => src/scheme/unicode
modified:
src/ikarus.boot
2007-10-17 19:59:37 -04:00