version 1.246, 2010/04/05 22:17:56
|
version 1.247, 2010/04/17 21:32:49
|
Line 233 SET_IP(DOES_CODE1(CFA));
|
Line 233 SET_IP(DOES_CODE1(CFA));
|
""just a slot to have an encoding for the DOESJUMP, |
""just a slot to have an encoding for the DOESJUMP, |
which is no longer used anyway (!! eliminate this)"" |
which is no longer used anyway (!! eliminate this)"" |
|
|
(doabicode) ( s:... f:... -- s:... f:...) gforth-internal paren_doabicode |
(doabicode) ( ... -- ...) gforth-internal paren_doabicode |
""run-time routine for ABI-CODE definitions"" |
""run-time routine for ABI-CODE definitions"" |
struct abi_code_ret_t { |
abifunc *f = (abifunc *)PFA(CFA); |
Cell *sp; |
Float *fp_mem = fp; |
double * fp; |
sp = (*f)(sp, &fp_mem); |
} ret = ((struct abi_code_ret_t(*)(Cell *, double *))(PFA(CFA)))(sp, fp); |
fp = fp_mem; |
sp = ret.sp; |
|
fp = ret.fp; |
|
#ifdef NO_IP |
#ifdef NO_IP |
INST_TAIL; |
INST_TAIL; |
goto *next_code; |
goto *next_code; |
Line 638 k ( R:w R:w1 R:w2 R:w3 R:w4 -- w R:w R:w
|
Line 636 k ( R:w R:w1 R:w2 R:w3 R:w4 -- w R:w R:w
|
|
|
\ digit is high-level: 0/0% |
\ digit is high-level: 0/0% |
|
|
abi-call ( #a_callee s:... f:... -- s:... f:... ) gforth abi_call |
abi-call ( #a_callee ... -- ... ) gforth abi_call |
struct abi_code_ret_t { |
abifunc *f = (abifunc *)a_callee; |
Cell *sp; |
Float *fp_mem = fp; |
double * fp; |
sp = (*f)(sp, &fp_mem); |
} ret = ((struct abi_code_ret_t(*)(Cell *, double *))(a_callee))(sp, fp); |
fp = fp_mem; |
sp = ret.sp; |
|
fp = ret.fp; |
|
|
|
\g strings |
\g strings |
|
|