--- gforth/prim 2005/12/04 13:46:12 1.181 +++ gforth/prim 2005/12/31 15:46:10 1.184 @@ -1,6 +1,6 @@ \ Gforth primitives -\ Copyright (C) 1995,1996,1997,1998,2000,2003,2004 Free Software Foundation, Inc. +\ Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005 Free Software Foundation, Inc. \ This file is part of Gforth. @@ -2447,19 +2447,19 @@ fp=FP; w@ ( a_addr -- u ) gforth wfetch u = *(UWyde*)(a_addr); -wx@ ( a_addr -- u ) gforth wxfetch +sw@ ( a_addr -- u ) gforth swfetch u = *(Wyde*)(a_addr); w! ( u a_addr -- ) gforth wstore *(Wyde*)(a_addr) = u; -t@ ( a_addr -- u ) gforth tfetch +l@ ( a_addr -- u ) gforth lfetch u = *(UTetrabyte*)(a_addr); -tx@ ( a_addr -- u ) gforth txfetch +sl@ ( a_addr -- u ) gforth slfetch u = *(Tetrabyte*)(a_addr); -t! ( u a_addr -- ) gforth tstore +l! ( u a_addr -- ) gforth lstore *(Tetrabyte*)(a_addr) = u; \+FFCALL @@ -2657,7 +2657,9 @@ ffi-prep-cif ( a_atypes n a_rtype a_cif w = ffi_prep_cif(a_cif, FFI_DEFAULT_ABI, n, a_rtype, a_atypes); ffi-call ( a_avalues a_rvalue a_ip a_cif -- ) gforth ffi_call +SAVE_REGS ffi_call(a_cif, a_ip, a_rvalue, a_avalues); +REST_REGS ffi-prep-closure ( a_ip a_cif a_closure -- w ) gforth ffi_prep_closure w = ffi_prep_closure(a_closure, a_cif, ffi_callback, a_ip);