version 1.149, 2003/11/08 20:29:03
|
version 1.153, 2004/04/10 10:09:52
|
Line 249 execute ( xt -- ) core
|
Line 249 execute ( xt -- ) core
|
#ifndef NO_IP |
#ifndef NO_IP |
ip=IP; |
ip=IP; |
#endif |
#endif |
IF_spTOS(spTOS = sp[0]); |
IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
SUPER_END; |
SUPER_END; |
EXEC(xt); |
EXEC(xt); |
|
|
Line 259 perform ( a_addr -- ) gforth
|
Line 259 perform ( a_addr -- ) gforth
|
#ifndef NO_IP |
#ifndef NO_IP |
ip=IP; |
ip=IP; |
#endif |
#endif |
IF_spTOS(spTOS = sp[0]); |
IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
SUPER_END; |
SUPER_END; |
EXEC(*(Xt *)a_addr); |
EXEC(*(Xt *)a_addr); |
: |
: |
Line 324 INST_TAIL;
|
Line 324 INST_TAIL;
|
JUMP(a_target); |
JUMP(a_target); |
#else |
#else |
SET_IP((Xt *)a_target); |
SET_IP((Xt *)a_target); |
|
INST_TAIL; |
|
NEXT_P2; |
#endif |
#endif |
|
SUPER_CONTINUE; /* we do our own control flow, so don't append NEXT etc. */ |
: |
: |
r> @ >r ; |
r> @ >r ; |
|
|
Line 2354 av-double ( r -- ) gforth av_double
|
Line 2357 av-double ( r -- ) gforth av_double
|
av_double(alist, r); |
av_double(alist, r); |
|
|
av-longlong ( d -- ) gforth av_longlong |
av-longlong ( d -- ) gforth av_longlong |
|
#ifdef BUGGY_LONG_LONG |
|
av_longlong(alist, d.lo); |
|
#else |
av_longlong(alist, d); |
av_longlong(alist, d); |
|
#endif |
|
|
av-ptr ( c_addr -- ) gforth av_ptr |
av-ptr ( c_addr -- ) gforth av_ptr |
av_ptr(alist, void*, c_addr); |
av_ptr(alist, void*, c_addr); |
Line 2373 lp += sizeof(Float);
|
Line 2380 lp += sizeof(Float);
|
av_double(alist, r); |
av_double(alist, r); |
|
|
av-longlong-r ( R:d -- ) gforth av_longlong_r |
av-longlong-r ( R:d -- ) gforth av_longlong_r |
|
#ifdef BUGGY_LONG_LONG |
|
av_longlong(alist, d.lo); |
|
#else |
av_longlong(alist, d); |
av_longlong(alist, d); |
|
#endif |
|
|
av-ptr-r ( R:c_addr -- ) gforth av_ptr_r |
av-ptr-r ( R:c_addr -- ) gforth av_ptr_r |
av_ptr(alist, void*, c_addr); |
av_ptr(alist, void*, c_addr); |
Line 2405 av-call-longlong ( -- d ) gforth av_cal
|
Line 2416 av-call-longlong ( -- d ) gforth av_cal
|
SAVE_REGS |
SAVE_REGS |
av_call(alist); |
av_call(alist); |
REST_REGS |
REST_REGS |
|
#ifdef BUGGY_LONG_LONG |
|
d.lo = llrv; |
|
d.hi = 0; |
|
#else |
d = llrv; |
d = llrv; |
|
#endif |
|
|
av-call-ptr ( -- c_addr ) gforth av_call_ptr |
av-call-ptr ( -- c_addr ) gforth av_call_ptr |
SAVE_REGS |
SAVE_REGS |
Line 2438 va-arg-int ( -- w ) gforth va_arg_int
|
Line 2454 va-arg-int ( -- w ) gforth va_arg_int
|
w = va_arg_int(clist); |
w = va_arg_int(clist); |
|
|
va-arg-longlong ( -- d ) gforth va_arg_longlong |
va-arg-longlong ( -- d ) gforth va_arg_longlong |
|
#ifdef BUGGY_LONG_LONG |
|
d.lo = va_arg_longlong(clist); |
|
d.hi = 0; |
|
#else |
d = va_arg_longlong(clist); |
d = va_arg_longlong(clist); |
|
#endif |
|
|
va-arg-ptr ( -- c_addr ) gforth va_arg_ptr |
va-arg-ptr ( -- c_addr ) gforth va_arg_ptr |
c_addr = (char *)va_arg_ptr(clist,char*); |
c_addr = (char *)va_arg_ptr(clist,char*); |
Line 2462 va_return_ptr(clist, void *, c_addr);
|
Line 2483 va_return_ptr(clist, void *, c_addr);
|
return 0; |
return 0; |
|
|
va-return-longlong ( d -- ) gforth va_return_longlong |
va-return-longlong ( d -- ) gforth va_return_longlong |
|
#ifdef BUGGY_LONG_LONG |
|
va_return_longlong(clist, d.lo); |
|
#else |
va_return_longlong(clist, d); |
va_return_longlong(clist, d); |
|
#endif |
return 0; |
return 0; |
|
|
va-return-float ( r -- ) gforth va_return_float |
va-return-float ( r -- ) gforth va_return_float |