slava
531dab7806
Implemented returning values from callbacks
2006-02-15 04:23:08 +00:00
slava
827df2d5d2
Added (presently failing) test for spilled arg callback
2006-02-14 22:27:28 +00:00
slava
d584e8c0bb
Basic callback unit tests pass
2006-02-14 03:47:42 +00:00
slava
90b10f1cfd
(Temporarily) add unnest_stacks() call
2006-02-14 03:31:50 +00:00
slava
2d1ef84911
Further work on callbacks
2006-02-14 03:20:39 +00:00
slava
1b5b692220
Fix FFI register clobberage and broken call stack semantics from recent runtime change
2006-02-13 22:57:20 +00:00
slava
8b74f721b5
Nullary callbacks are working
2006-02-13 22:16:34 +00:00
slava
3173747fb5
Various fixes for recent callback-related runtime changes
2006-02-13 21:00:21 +00:00
slava
84d24c4440
Runtime changes to support callbacks, and other cleanups
2006-02-13 07:46:07 +00:00
slava
1f153c24b2
Starting work on callbacks
2006-02-11 07:30:18 +00:00
slava
dc3f4b2efb
Cocoa binding improvements
2006-02-10 03:11:22 +00:00
slava
44f2cc04ef
Fix compile error
2006-02-09 03:15:23 +00:00
slava
3d5e96172f
Clean up out of memory handler
2006-02-09 03:12:20 +00:00
slava
b861c09e9f
Clean up AGL's patch
2006-02-08 00:09:46 +00:00
agl
d088a97f82
Add data/return stack under/over flow checks for POSIX
...
This adds extra errors:
#define ERROR_STACK_UNDERFLOW (12<<3)
#define ERROR_STACK_OVERFLOW (13<<3)
#define ERROR_RETSTACK_UNDERFLOW (14<<3)
#define ERROR_RETSTACK_OVERFLOW (15<<3)
On unix the data and return stacks have poison pages above and below them in
memory. This patch adds checks to the sigv signal handler which checks to see
if the faulting address is in one of these pages and, if so, triggers the
correct error.
To see:
: data-overflow 1 2 3 data-overflow ;
: ret-underflow V{ } set-callstack r> ;
: ret-overflow 1 >r ret-overflow ;
(to test data-underflow just call + with an empty stack)
AGL
2006-02-07 22:29:36 +00:00
slava
f353ea347b
Minor Windows build fixes
2006-02-07 19:37:32 +00:00
slava
ac68a16492
FFI now supports passing structs by value
...
So far, this is only supported on PowerPC.
2006-02-06 06:43:59 +00:00
slava
9e5b6424a1
Initial revision
2006-02-01 02:31:53 +00:00
Slava Pestov
2acb28ae0c
Solaris/x86 support
2006-01-31 19:31:31 +00:00
Doug Coleman
ace98260e3
Added a fix for sigaction(): now retries on recoverable error EINTR
2006-01-31 01:11:22 +00:00
Slava Pestov
fd59c87eae
AMD64 FFI fixes; httpd load fix; minor opengl optimization
2006-01-30 07:03:34 +00:00
Slava Pestov
13ef8f9412
cell fix; experimental preferred size cache; floor/ceiling/truncate/mod for floats; fix mod for ratios; fix float equality test
2006-01-27 04:01:14 +00:00
Slava Pestov
64e50829b7
double default heap sizes on amd64
2006-01-25 06:26:31 +00:00
Slava Pestov
2ee22aad49
float parameters work
2006-01-25 06:18:12 +00:00
Slava Pestov
1177038cec
stub out AMD64 float parameter code
2006-01-25 01:20:20 +00:00
Slava Pestov
9ea2332a2b
FFI work
2006-01-25 00:56:08 +00:00
Slava Pestov
df4c2fc067
fix fixnum-shift overflow check
2006-01-21 08:23:14 +00:00
Slava Pestov
f9db19f917
fixes
2006-01-21 02:37:38 +00:00
Slava Pestov
b67c8ceb16
boxing a null pointer pushes f
2006-01-10 02:17:58 +00:00
Slava Pestov
53c6cb2179
make class< a bit faster, mutable strings
2005-12-26 02:05:31 +00:00
Slava Pestov
346cb9cb7d
C type cleanup
2005-12-25 22:46:21 +00:00
Slava Pestov
2f73851117
fix typo
2005-12-25 06:00:10 +00:00
Slava Pestov
a5e14acaa3
fix a crash
2005-12-25 04:01:49 +00:00
Slava Pestov
dec98203d3
remove repetitions
2005-12-24 23:29:31 +00:00
Slava Pestov
636b46c5b9
fix compile warnings on 64-bit platforms
2005-12-21 07:47:45 +00:00
Slava Pestov
0e6236e6f6
win64 fixes in runtime
2005-12-21 02:36:52 +00:00
Slava Pestov
6c5819af56
fix missing GC check
2005-12-13 01:53:55 +00:00
Slava Pestov
ff3876e221
win32 compile error fix
2005-12-13 00:36:16 +00:00
Slava Pestov
58a3e3ed16
new alien>string and string>alien primitives; powerpc backend fixes
2005-12-12 23:51:45 +00:00
Slava Pestov
3bec501259
latest fixes
2005-12-11 23:27:39 +00:00
Slava Pestov
1086f8b3e3
64-bit relocation
2005-12-11 20:14:41 +00:00
Slava Pestov
b0cfcca990
fix AMD64 %fixnum* overflow
2005-12-11 03:48:09 +00:00
Slava Pestov
aed2d90b30
fix 64-bit issue in runtime
2005-12-05 03:29:55 +00:00
Slava Pestov
ca14fd7b1c
amd64 work
2005-12-04 07:30:19 +00:00
Slava Pestov
d8384c12c9
initial AMD64 porting work
2005-12-02 07:25:44 +00:00
Slava Pestov
4435110231
string hashing kludge; amd64 cpu detection
2005-12-02 04:40:44 +00:00
Slava Pestov
9ef9193308
new hashtable
2005-11-27 22:45:48 +00:00
Slava Pestov
eca20beec0
about to bootstrap hashstable
2005-11-25 00:02:20 +00:00
Slava Pestov
036d1f9673
bootstrap fix
2005-11-15 17:58:44 +00:00
Slava Pestov
a651cc87b1
various fixes to inference, experimenting with %char-slot vops and interruption checks
2005-11-14 03:04:14 +00:00
Slava Pestov
9440f385e5
interruption checks get compiled now, fixnum/mod fixed on powerpc
2005-11-12 05:37:24 +00:00
Slava Pestov
a3687773b5
fix array size fep
2005-11-05 03:50:26 +00:00
Slava Pestov
9d2e4a77a6
fix another Mach-O FFI problem
2005-10-24 02:31:01 +00:00
Slava Pestov
b15a262e54
implement mach exception handling
2005-10-24 00:50:29 +00:00
Slava Pestov
3ff1915f1a
UI fixes for OS X, compiler fixes for PowerPC
2005-10-12 03:28:17 +00:00
Slava Pestov
29104bb40e
fix powerpc relocation bug
2005-10-12 01:46:14 +00:00
Slava Pestov
6b8e232c63
fix bignum emission, put MT in core
2005-10-08 05:15:14 +00:00
Doug Coleman
26d0e7ede5
call get_error_message() for an F_STRING instead of char*
2005-10-07 22:50:31 +00:00
Doug Coleman
7242f38fd7
get_error_message() is for native calls in native/win32/ffi.c
...
error_message() is called via alien-invoke from factor code
bugfix: the last "fix" caused the factor runtime to get a char* instead of F_STRING
2005-10-06 22:10:27 +00:00
Doug Coleman
fa122fd1c0
buffer_to_c_string() now uses strlen()
2005-10-05 04:24:19 +00:00
Doug Coleman
443acc846a
Added buffer_to_c_string to go from a win32-api-allocated buffer to a gc-ed char*
...
Changed whitespace removal
2005-10-05 04:06:57 +00:00
Doug Coleman
7fc87a420b
Include ctype.h for isspace() only in win32
2005-10-05 04:02:24 +00:00
Doug Coleman
62958f570e
Remove implicit declaration of init_signals() on win32
2005-10-05 03:16:30 +00:00
Doug Coleman
b248ab3d3b
Remove "\r\n" from last_error() if it exists
2005-10-02 20:15:59 +00:00
Doug Coleman
b34da424dd
set dll->dll = NULL on failure in ffi_dllopen()
2005-10-02 19:47:33 +00:00
Slava Pestov
b6e1569ef5
make panes a bit more flexible
2005-09-25 04:18:12 +00:00
Slava Pestov
9f0434f30f
some UI tweaking
2005-09-25 03:21:09 +00:00
Slava Pestov
3c8b073be0
add more env slots
2005-09-24 21:26:04 +00:00
Slava Pestov
c4cec1321c
rename ifte to if
2005-09-24 19:21:17 +00:00
Slava Pestov
29190ebc3e
catch change, new cleanup word, with-server combinator
2005-09-21 00:18:01 +00:00
Slava Pestov
34ff4e2c27
more preliminary work for callcc compilation
2005-09-20 05:59:38 +00:00
Slava Pestov
fa1e1a4801
f throw no longer a no-op
2005-09-18 02:25:18 +00:00
Slava Pestov
7ecbfb5c98
big generic word cleanup; kill-literals optimization; continuations overhaul
2005-09-16 06:39:33 +00:00
Slava Pestov
bf5d88b649
changes to continuation words
2005-09-14 04:37:50 +00:00
Slava Pestov
27439f95c9
arrays are now better supported, various cleanups
2005-09-12 00:46:55 +00:00
Slava Pestov
d0312300b8
unsafe-nth unsafe-set-nth for faster inner loops
2005-09-10 22:27:31 +00:00
Slava Pestov
6952bcdda8
simple labels optimization
2005-09-10 03:40:08 +00:00
Slava Pestov
2bdd82ea53
simpler t
2005-09-09 21:32:38 +00:00
Slava Pestov
55e2a9e232
reworking simplifier and basic blocks
2005-09-09 02:23:54 +00:00
Slava Pestov
258f853911
improved literal killing optimization
2005-09-07 21:21:11 +00:00
Slava Pestov
60d78bc4f1
remove debug code
2005-09-06 00:34:04 +00:00
Slava Pestov
30f0dcf5b9
fix powerpc typo
2005-09-06 00:33:36 +00:00
Slava Pestov
7f7a0a057e
working on PowerPC overflow checks
2005-09-05 07:06:47 +00:00
Slava Pestov
7711aff1a5
tweaking stack shuffle compilation
2005-09-04 21:07:59 +00:00
Slava Pestov
74430b8b18
utf16 string unboxing tweak
2005-09-03 21:59:53 +00:00
Slava Pestov
b0b5f4f79d
alien tweaks
2005-09-03 18:48:25 +00:00
Slava Pestov
b1daea44a6
word-name, word-vocabulary are now slots in the word object
2005-08-29 06:34:04 +00:00
Slava Pestov
eb16e7a699
some SDL renaming, fix a few typos
2005-08-24 04:30:07 +00:00
Slava Pestov
fbd7d4fef7
inspector bug fix, sleep word
2005-08-23 19:50:32 +00:00
Slava Pestov
c8eacd7b0b
major bootstrap cleanup
2005-08-20 01:46:12 +00:00
Slava Pestov
7426167a5a
removed obsolete file
2005-08-16 21:42:32 +00:00
Slava Pestov
9bbf30f91c
typo in dll.c
2005-08-16 03:34:10 +00:00
Slava Pestov
dcdedf2e90
fix image loading with missing libraries
2005-08-15 19:45:46 +00:00
Slava Pestov
979225805e
images referencing libraries that could not be found no longer fail to load
2005-08-15 19:34:00 +00:00
Slava Pestov
2495ef46f3
redesigned generic arithmetic; new tag primitive
2005-08-15 07:25:39 +00:00
Slava Pestov
f65aa407e9
\ foo is now a first-class type; this removes the need for inference-level partial eval, and simplifies a lot of other code
2005-08-04 03:56:28 +00:00
Slava Pestov
8c439fad23
Fix overflow in room primitive
2005-07-26 23:54:43 +00:00
Slava Pestov
2283fee960
some code cleanups, factorbot PING fix
2005-07-26 20:39:14 +00:00
Mackenzie Straight
6e51d61c33
add dllexports
2005-07-26 14:41:55 +00:00
Slava Pestov
9c5360cdba
document 0.77 changes, print tuple addr in debugger
2005-07-25 03:12:34 +00:00