FFI support for 64bit architectures.
authorMatt Birkholz <matt@birkholz.chandler.az.us>
Tue, 21 Dec 2010 17:28:03 +0000 (10:28 -0700)
committerMatt Birkholz <matt@birkholz.chandler.az.us>
Tue, 21 Dec 2010 17:28:03 +0000 (10:28 -0700)
commitbbc491c2d415927bd8415951936459782bcea966
treede5f97edefcbc7c4c0a7d420ccc7788cd95b80d5
parent36ca90b8c977289c3aedcde08996b1ea0d73c08c
FFI support for 64bit architectures.

* src/ffi/generator.scm: Declare long callback IDs, large enough to
avoid truncation warnings when the toolkit type is also large.  Use
%ld instead of %d for sizeof and member offsets, and cast them to
long.  On x86_64, these have types ulong and long respectively.

* src/microcode/: pruxffi.c, pruxffi.h: (callback_run_kernel)
(callback_run_handler): Declare long callback_id params.  Use %ld.

* src/runtime/ffi.scm (radix): Parameterize alien operations to
support 64bit or 32bit addresses.
src/ffi/generator.scm
src/microcode/pruxffi.c
src/microcode/pruxffi.h
src/runtime/ffi.scm