jjgarcia
9c09789e75
The interpreter, the printer and the compiler now share a common stack.
...
This stack is also used to build the Invocation History records, which keep
track of which functions are called and which are their local environments.
With these changes, the debugger now works to the extend that it inspecting
these Invocation History Records with :backtrace, :up, :down, :variables,
now output the rights values.
2001-09-05 18:09:20 +00:00
jjgarcia
528810f1f0
Allow realloc(NULL,size).
2001-08-22 22:42:19 +00:00
jjgarcia
fed67561d8
If rlimit values are too high, the stack-boundary pointer in ecls might wrap around.
2001-08-22 22:41:32 +00:00
jjgarcia
d1e94cdc93
Should use va_gcall() rather than the unportable gcall()
2001-08-22 22:13:41 +00:00
jjgarcia
e5f3575fb1
This file should have been commited while performing the update to GC 6.0
2001-08-22 21:39:12 +00:00
jjgarcia
5d6c9b0fae
gc.h is now located on a different place.
2001-08-22 21:34:19 +00:00
jjgarcia
211c804e17
Incorporate version 6.0 of the Boehm-Weiser garbage collector
2001-08-19 18:04:30 +00:00
jjgarcia
e090dfbc86
Avoid passing files throug the preprocessor, as it corrupts paths. For
...
instance, when cross-compiling from FreeBSD to Linux, /compat/linux
gets converted into "/compat/ 1 " which is obviously bogus.
2001-08-18 10:55:10 +00:00
jjgarcia
1dc8ef2c96
Fix typo, corrupt_hashtable -> corrupt_hash
2001-08-18 10:12:53 +00:00
jjgarcia
f6858838f4
Refer allocation, not to a fixed DATA_START, which could change any time,
...
but to the dynamically determined "heap_start".
Define pointer types and macros to handle pointer arithmetic properly.
Replace calls to clLfuncall in interpreted code with OP_FCALL/OP_PFCALL.
Fix OP_PFCALL/OP_FCALL so that it looks for symbols in the global environment.
Take care of stack growth direction in mark_stack_conservative().
2001-08-12 14:49:14 +00:00
jjgarcia
e707fdb744
va_APPLY() and va_APPLY_closure() contained absurd, stupid and useless code.
2001-08-11 13:31:08 +00:00
jjgarcia
a5e550dce9
Fix va_lambda_apply() and add va_gcall().
2001-08-11 13:30:29 +00:00
jjgarcia
5d5c0495a4
Fix typo NO_ARG_ARRAY -> NO_ARGS_ARRAY
2001-08-11 13:29:58 +00:00
jjgarcia
07270ea7dc
Add declaration for search_macro().
2001-08-11 13:29:05 +00:00
jjgarcia
1eaf1d3999
Remove nonportable use of va_list.
2001-08-06 23:05:13 +00:00
jjgarcia
8218528ffb
Fixnum product would overflow.
...
Bit fiddling operations with negative fixnums now work.
Remove unportable code of the type va_list d = cs.
Simplify gathering of &rest and &key arguments in compiled code.
2001-08-06 22:14:31 +00:00
jjgarcia
b6fc855410
Bit fiddling functions (boolean, logand, logbit, etc) now work with negative bignums.
2001-08-01 16:47:19 +00:00
jjgarcia
4b7fe789bb
The list of files in the source tarball was outdated
2001-07-31 19:51:46 +00:00
jjgarcia
03c0ed9409
Tag release 0.3
2001-07-31 17:41:22 +00:00
jjgarcia
189070661c
Incorporate news from ECLSv0.3
2001-07-31 17:24:09 +00:00
jjgarcia
77d03de739
Bring some files up to date.
2001-07-30 16:38:27 +00:00
jjgarcia
16668c218d
When using Boehm's GC, protect data in shared libraries from garbage collection.
2001-07-30 16:09:29 +00:00
jjgarcia
ef28e8a279
Remove references to heap_{start,end}. They do not exist when linking against Boehm's GC.
2001-07-29 16:33:34 +00:00
jjgarcia
77c8cc4ebf
Fix typo.
2001-07-29 16:25:10 +00:00
jjgarcia
3ef9e7fcf8
Define ARCHITECTURE for __sparc__
2001-07-29 16:14:35 +00:00
jjgarcia
eadd74cbba
Define CHAR_BIT as number of bits in a character.
2001-07-29 16:13:12 +00:00
jjgarcia
fabc59520f
Use type cl_index to perform page and pointer arithmetics.
2001-07-29 15:54:05 +00:00
jjgarcia
03435a65bd
Add SHARED_LDFLAGS for sun/solaris.
2001-07-29 15:53:32 +00:00
jjgarcia
0ad7026987
Reject to run without GCC.
2001-07-29 15:51:51 +00:00
jjgarcia
af2d5baf84
parse_key is now named va_parse_key
2001-07-29 15:51:08 +00:00
jjgarcia
7c2af5c4ca
Add {va_}parse_key, which is needed for inlined lambda code.
2001-07-29 15:45:11 +00:00
jjgarcia
8854a7c294
Mention the relation of ECLS with other KCL-like implemenation, including GCL.
2001-07-29 15:43:20 +00:00
jjgarcia
df51d3c0ec
Remove siLuniversal_error_handler from C library.
2001-07-29 11:08:58 +00:00
jjgarcia
126c99b6fb
In fixnnint(), retrieve unsigned long from bignum, instead of signed long.
2001-07-29 10:55:32 +00:00
jjgarcia
a910aa351d
Remove debugging statement.
2001-07-29 09:46:15 +00:00
jjgarcia
ee5093d788
Avoid bootstrapping problems with FIND-CLASS.
2001-07-29 09:39:24 +00:00
jjgarcia
e25a576ad5
Fix test ECLS_ARGS_ARRAY.
2001-07-28 17:52:08 +00:00
jjgarcia
4699a0e121
Make sure GMP is configured on the right directory.
2001-07-28 17:26:19 +00:00
jjgarcia
0393f4d618
Implement accessor ROW-MAJOR-AREF.
...
Implement special form COMPILER-LET.
2001-07-28 10:47:17 +00:00
jjgarcia
b102909d4d
Add type BOOLEAN.
2001-07-28 10:43:32 +00:00
jjgarcia
f3479bd14c
Split configure.in into configure.in+aclocal.m4 and improve the resulting tests.
2001-07-27 17:06:02 +00:00
jjgarcia
afc2bd70d3
Make the code more portable with respect to changes on the direction of
...
growth of the stack and in the way va_arg() arguments can be accessed.
Fix the bytecodes compiler so that it handles toplevel forms properly and
so that it understands LOCALLY.
Split configure.in into configure.in+aclocal.m4 and improve the resulting
tests.
2001-07-27 17:01:28 +00:00
jjgarcia
2dbdc71318
Define tanhf for systems that do not have it.
2001-07-23 10:56:18 +00:00
jjgarcia
9f01940912
Use finite() instead of isinf(), which does not exist in Solaris.
2001-07-23 10:55:47 +00:00
jjgarcia
126d813dcb
Fix support for linux.
2001-07-23 10:20:47 +00:00
jjgarcia
eb8a59107f
Use isdigit() instead of isnumber()
2001-07-23 10:20:07 +00:00
jjgarcia
acc3404d71
Use isdigit() instead of isnumber()
2001-07-23 09:31:59 +00:00
jjgarcia
6cec11ba51
Add support for linux
2001-07-23 09:25:52 +00:00
jjgarcia
983975dbd9
Rewrite the compiler, tests and auxiliary files using the new binary loader.
2001-07-23 09:08:02 +00:00
jjgarcia
d1156ed625
Remove files which are no longer needed.
2001-07-23 09:01:05 +00:00