| ip=IP; /* undo any ip updating that may have been performed by NEXT_P0 */ |
ip=IP; /* undo any ip updating that may have been performed by NEXT_P0 */ |
| #endif /* !defined(NO_IP) */ |
#endif /* !defined(NO_IP) */ |
| SUPER_END; /* !! probably unnecessary and may lead to measurement errors */ |
SUPER_END; /* !! probably unnecessary and may lead to measurement errors */ |
| EXEC(*(Xt *)PFA(CFA)); |
VM_JUMP(EXEC1(*(Xt *)PFA(CFA))); |
| |
|
| (dofield) ( n1 -- n2 ) gforth-internal paren_field |
(dofield) ( n1 -- n2 ) gforth-internal paren_field |
| ""run-time routine for fields"" |
""run-time routine for fields"" |
| #endif |
#endif |
| IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
| SUPER_END; |
SUPER_END; |
| EXEC(xt); |
VM_JUMP(EXEC1(xt)); |
| |
|
| perform ( a_addr -- ) gforth |
perform ( a_addr -- ) gforth |
| ""@code{@@ execute}."" |
""@code{@@ execute}."" |
| #endif |
#endif |
| IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
IF_spTOS(spTOS = sp[0]); /* inst_tail would produce a NEXT_P1 */ |
| SUPER_END; |
SUPER_END; |
| EXEC(*(Xt *)a_addr); |
VM_JUMP(EXEC1(*(Xt *)a_addr)); |
| : |
: |
| @ execute ; |
@ execute ; |
| |
|
| ip=IP; |
ip=IP; |
| #endif |
#endif |
| SUPER_END; |
SUPER_END; |
| EXEC(*(Xt *)a_addr); |
VM_JUMP(EXEC1(*(Xt *)a_addr)); |
| |
|
| does-exec ( #a_cfa -- R:nest a_pfa ) new does_exec |
does-exec ( #a_cfa -- R:nest a_pfa ) new does_exec |
| #ifdef NO_IP |
#ifdef NO_IP |