Commit graph

1211 commits

Author SHA1 Message Date
Alex Shinn
821546244a plan9 fixes - can't use #if preprocessor statements inside macros.
also, no log2() by default, defining it in terms of log().
2009-07-12 18:36:37 +09:00
Alex Shinn
41f54a7f41 initial windows mingw support patch from felix winkelmann 2009-07-07 19:58:28 +09:00
Alex Shinn
e8985cd84c Reporting a more sensible error when the initialization
file isn't found, per issue #2:
http://code.google.com/p/chibi-scheme/issues/detail?id=2
2009-07-07 19:36:59 +09:00
Alex Shinn
b1c0ea895b committing initial bignum support, still needs more thorough testing.
can disable with USE_BIGNUMS=0 - the interactions between this and
USE_FLONUMS are messy, so they will likely be merged into a single
option in the near future (i.e. you either have only fixnums, or a
full range of numeric types).
adding rationals based on this would be easy and is a likely future
feature.  adding native support for complex numbers is unlikely.
2009-07-07 19:16:23 +09:00
felix
7df9ff823a merged with upstream commits 2009-07-01 18:30:13 +02:00
felix
cf9ec69fd3 more mingw fixes in Makefile 2009-06-30 09:54:28 +02:00
felix
bf598f6ee5 basic mingw support 2009-06-30 09:50:32 +02:00
Alex Shinn
fc04f16b1d merging plan9 work 2009-06-30 13:45:47 +09:00
Alex Shinn
55a8a38e62 DESTDIR patch from sladegen 2009-06-30 11:38:05 +09:00
Alex Shinn
78ceffdee4 making literals immutable 2009-06-28 19:07:19 +09:00
Alex Shinn
343303f408 cleaning up plan9 mkfile and providing install target 2009-06-28 17:46:37 +09:00
Alex Shinn
f1e7c3a2db reporting source file and line number for compile-time errors 2009-06-28 14:52:52 +09:00
Alex Shinn
ab2cbe12f7 gc preserving read errors 2009-06-28 13:19:12 +09:00
Alex Shinn
cca8727354 fixing hex char and number syntax, adding support for n/d numbers
as floats
2009-06-28 13:10:34 +09:00
Alex Shinn
e40fdb3b73 using a separate sexp_free_list type, so we don't need the
overhead of the sexp tag and should thus fit in any aligned
block on 64bit architectures.  this also removes a lot of
ugly casts, making the code more readable.
2009-06-28 02:31:11 +09:00
Alex Shinn
69ab0d02d9 using names from type specs for unreadable objects in sexp_write 2009-06-28 02:05:13 +09:00
Alex Shinn
63b8f63fec need to close string ports 2009-06-28 01:48:12 +09:00
Alex Shinn
baa8b07d63 don't want -l in link rule for chibi-scheme 2009-06-27 23:54:48 +09:00
Alex Shinn
32838c1f9b only using our own buffering for string ports 2009-06-27 23:46:03 +09:00
Alex Shinn
d4f97c40d5 initial plan9 work 2009-06-27 20:28:04 +09:00
Alex Shinn
86ce8fbc15 hygiene fix for nested macros, still need to clean this up 2009-06-24 00:47:49 +09:00
Alex Shinn
09114aa45d using -fPIC on object files, running ldconfig on install if available 2009-06-24 00:45:54 +09:00
Alex Shinn
ddf866ee27 adding basic call/cc tests 2009-06-23 11:53:06 +09:00
Alex Shinn
6941ada64f Was unintentionally using the same name 'sexp_types' for the sexp
type definitions and for the sexp type enum.  They shouldn't conflict,
since the enum is in the enum namespace, but apparently they do in
mscv.  Chaging the defs to sexp_type_specs.
2009-06-23 11:49:26 +09:00
Alex Shinn
956b451cdd Updating resume/cc needs to jump to the start of the procedure
bytecode plus the offset on the stack (not directly to the offset
on the stack).  Need to add a call/cc test to the r5rs-tests to
catch this next time.
2009-06-23 11:46:56 +09:00
Alex Shinn
eb629f4381 Added tag 0.2 for changeset 7591a4f48a8c 2009-06-22 21:54:18 +09:00
Alex Shinn
097d6705de fixes for alternate compile options 2009-06-22 21:30:14 +09:00
Alex Shinn
3d46acee56 putting back in -O2 2009-06-21 17:38:26 +09:00
Alex Shinn
a60cc1e98c fixing bug in loading init.scm file 2009-06-21 17:26:36 +09:00
Alex Shinn
cafb396745 fixing output-string ports on linux 2009-06-21 04:14:09 -04:00
Alex Shinn
450548e3e2 store difference between ip and bytecode start instead of the
raw ip, which may overflow the integer range.
2009-06-21 16:37:58 +09:00
Alex Shinn
b9f4668027 linux portability fixes 2009-06-21 01:12:20 -04:00
Alex Shinn
6f9e9c1321 cleaning up build 2009-06-21 11:58:55 +09:00
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
8a8e7c165e preparing for 0.2 release 2009-06-18 00:49:59 +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
ba484795d1 considering adjusting heap a dead-end for now 2009-06-15 19:04:44 +09:00
Alex Shinn
c725c48f74 switching to data-driven sexp_mark 2009-06-15 17:34:26 +09:00
Alex Shinn
d374a7e185 preserving file names during load in main 2009-06-14 23:49:39 +09:00
Alex Shinn
d6b850b5aa fixing some gc var preservation bugs 2009-06-14 23:41:00 +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
bafd9ebd29 merging adjacent free chunks during the sweep phase 2009-06-10 15:17:15 +09:00
Alex Shinn
54baeaca36 don't sweep the free-list elements!
implementing heap expansion w/ realloc.
realloc is always giving back the same pointer right now,
so pointer adjusting not tested yet.
2009-06-10 00:38:15 +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
378cdff8e3 preserving gc vars in generate_lambda 2009-05-09 02:34:51 +09:00