| define(condbranch, |
define(condbranch, |
| $1 ( `#'ndisp $2 ) $3 |
$1 ( `#'ndisp $2 ) $3 |
| $4 SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
$4 SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| $5 |
$5 |
| $1-lp+!`#' ( `#'ndisp `#'nlocals $2 ) $3_lp_plus_store_number |
$1-lp+!`#' ( `#'ndisp `#'nlocals $2 ) $3_lp_plus_store_number |
| $4 lp += nlocals; |
$4 lp += nlocals; |
| SET_IP((Xt *)(((Cell)(IP-2))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-2))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| |
|
| sp++; |
sp++; |
| IF_spTOS(spTOS = sp[0]); |
IF_spTOS(spTOS = sp[0]); |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| |
|
| (?do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_question_do |
(?do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_question_do |
| if (nstart == nlimit) { |
if (nstart == nlimit) { |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| : |
: |
| (+do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_plus_do |
(+do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_plus_do |
| if (nstart >= nlimit) { |
if (nstart >= nlimit) { |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| : |
: |
| (u+do) ( #ndisp ulimit ustart -- R:ulimit R:ustart ) gforth paren_u_plus_do |
(u+do) ( #ndisp ulimit ustart -- R:ulimit R:ustart ) gforth paren_u_plus_do |
| if (ustart >= ulimit) { |
if (ustart >= ulimit) { |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| : |
: |
| (-do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_minus_do |
(-do) ( #ndisp nlimit nstart -- R:nlimit R:nstart ) gforth paren_minus_do |
| if (nstart <= nlimit) { |
if (nstart <= nlimit) { |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| : |
: |
| (u-do) ( #ndisp ulimit ustart -- R:ulimit R:ustart ) gforth paren_u_minus_do |
(u-do) ( #ndisp ulimit ustart -- R:ulimit R:ustart ) gforth paren_u_minus_do |
| if (ustart <= ulimit) { |
if (ustart <= ulimit) { |
| SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
SET_IP((Xt *)(((Cell)(IP-1))+ndisp)); |
| TAIL; |
INST_TAIL; |
| } |
} |
| SUPER_CONTINUE; |
SUPER_CONTINUE; |
| : |
: |