Alex Shinn
24d9bfc950
switching to linking as a library
2009-06-20 21:57:28 +09:00
Alex Shinn
56dcf497de
various fixes, gc can handle running the whole test suite
...
in a loop hundreds of times. the heuristics for growing
the heap still cause it to grow very slowly over time,
but nonetheless slower than boehm.
2009-06-19 17:57:40 +09:00
Alex Shinn
9e6a0c1300
adding immediate flonum support
2009-06-18 16:15:56 +09:00
Alex Shinn
7e3014ba38
cleanup, removing mid-function returns which could corrupt
...
the gc_var trace.
2009-06-18 00:36:39 +09:00
Alex Shinn
39fdd89474
not trying to adjust the heap, just keeping a linked list
...
of heap chunks. expanding the heap thus works now, so i've
removed all the debugging utils from gc.c, except the conservative
checks which are now a config option.
2009-06-17 22:37:21 +09:00
Alex Shinn
c725c48f74
switching to data-driven sexp_mark
2009-06-15 17:34:26 +09:00
Alex Shinn
bddbaedfa7
test suite now passes with new gc, even starting
...
with a tiny heap and causing multiple allocations.
pointer adjusting after a moved realloc still segfaults.
2009-06-13 21:16:49 +09:00
Alex Shinn
b636225da7
fixing some stack pointer management bugs
2009-06-12 17:35:57 +09:00
Alex Shinn
cce116bc0a
progress
2009-06-11 23:02:30 +09:00
Alex Shinn
d65e7255f8
stack is now a data type (maybe merge w/ vector),
...
new gc seems initially functional
2009-06-08 02:06:24 +09:00
Alex Shinn
a85d80038c
while still working towards the precise gc, reordering the
...
context argument to all functions
2009-05-08 23:27:04 +09:00
Alex Shinn
28d5775bbe
string and vector data is now packed, no longer allocing arbitrary
...
blocks of untagged data, string and vector reads use an initial
buffer to reduce allocations
2009-05-06 22:43:24 +09:00
Alex Shinn
89d282ef9d
gc allocation working, need to fix garbage collecting
2009-05-05 15:15:50 +09:00
Alex Shinn
4d78a28d8c
passing context through all calls that can allocate memory
...
in preparation for a native, thread-safe gc.
2009-05-05 03:16:09 +09:00
Alex Shinn
8cf371cfe5
merged
2009-04-30 18:48:33 +09:00
Alex Shinn
e26fc9af80
initial gc outline
2009-04-30 18:47:26 +09:00
Alex Shinn
b5f07e6da6
fixing syntax-rules.scm
2009-04-14 21:28:21 +09:00
Alex Shinn
b4aaf9b386
fixes for linux
2009-04-08 10:19:16 -04:00
Alex Shinn
8a5cfbddc0
allowing unhygienic insertion
2009-04-08 23:07:19 +09:00
Alex Shinn
820c13e752
reporting calling procedure name for exceptions
2009-04-08 11:55:38 +09:00
Alex Shinn
fad4e3976e
r5rs test suite, various bugfixes
2009-04-08 10:16:26 +09:00
Alex Shinn
ca9e391ee3
fixing tail-call bug when the new frame is larger.
...
allowing (error x) for any object x.
vm tracing is now a compile-time option with -DDEBUG_VM.
2009-04-03 23:27:01 +09:00
Alex Shinn
55841679e8
detecting undefined variables
2009-04-03 17:58:03 +09:00
Alex Shinn
2983b10af1
switching to chained buckets for symbol table
2009-04-03 02:02:59 +09:00
Alex Shinn
177003299e
mutable parameters
2009-04-03 01:04:46 +09:00
Alex Shinn
7130f38e76
string-ports
2009-04-02 20:03:46 +09:00
Alex Shinn
2e55517108
string utilities
2009-04-02 18:35:08 +09:00
Alex Shinn
26eacabad9
handling exact/inexact distinction better
2009-04-02 16:19:52 +09:00
Alex Shinn
553ac63a18
adding expt and char utils
2009-04-02 14:38:23 +09:00
Alex Shinn
ee5f33c9fb
flushing out library
2009-04-01 17:25:47 +09:00
Alex Shinn
63d337491a
adding explicit renaming macros and a bunch of library code
2009-04-01 02:44:53 +09:00
Alex Shinn
a0c78ad611
removing use of global variables
2009-03-31 21:52:26 +09:00
Alex Shinn
eaf79f4856
internal defines should do the right thing now
2009-03-31 17:42:09 +09:00
Alex Shinn
e7f507a5f1
tail calls are back
2009-03-29 18:59:47 +09:00
Alex Shinn
c97ecdb501
passing context around in analyze functions
2009-03-27 17:18:50 +09:00
Alex Shinn
7b38289ba2
renaming, removing unused functions
2009-03-27 16:47:20 +09:00
Alex Shinn
c6c1c00c58
definitions working
2009-03-26 00:15:47 +09:00
Alex Shinn
4d55fd3180
mid-rewrite
2009-03-25 15:24:52 +09:00
Alex Shinn
08d37049fd
cleaning up allocation, hiding last details of sexp fields
2009-03-17 16:23:33 +09:00
Alex Shinn
c830b498b7
various bugfixes
2009-03-16 18:37:33 +09:00
Alex Shinn
4dc02c1e1a
simplifying opcode analysis
2009-03-16 02:52:48 +09:00
Alex Shinn
3a8f46027c
cleaning up error handling, support flonum arith
2009-03-16 01:07:31 +09:00
Alex Shinn
92aed1eda8
removing warnings
2009-03-15 21:39:36 +09:00
Alex Shinn
2c37e682ef
lowercasing
2009-03-15 21:23:39 +09:00
Alex Shinn
caa9a104dd
cleaning up types - using a single union for all heap allocated types
2009-03-15 20:59:35 +09:00
Alex Shinn
f3a4e8c310
adding initial test suite
2009-03-15 14:07:28 +09:00
Alex Shinn
dfc38557b9
initial macro support
2009-03-11 15:48:18 +09:00
Alex Shinn
c2103148cb
internal define support
2009-03-11 02:53:05 +09:00
Alex Shinn
160149c97b
variadic args working
2009-03-09 23:41:17 +09:00
Alex Shinn
09bbe9ac2e
adding i/o port parameters
2009-03-08 00:24:46 +09:00