| define(condbranch, |
define(condbranch, |
| $1 $2 |
$1 $2 |
| $3 SET_IP((Xt *)(((Cell)IP)+(Cell)NEXT_INST)); |
$3 SET_IP((Xt *)(((Cell)IP)+(Cell)NEXT_INST)); |
| |
TAIL; |
| } |
} |
| else |
else |
| INC_IP(1); |
INC_IP(1); |
| $1-lp+!# $2_lp_plus_store_number |
$1-lp+!# $2_lp_plus_store_number |
| $3 lp += (Cell)(IP[1]); |
$3 lp += (Cell)(IP[1]); |
| SET_IP((Xt *)(((Cell)IP)+(Cell)NEXT_INST)); |
SET_IP((Xt *)(((Cell)IP)+(Cell)NEXT_INST)); |
| |
TAIL; |
| } |
} |
| else |
else |
| INC_IP(2); |
INC_IP(2); |
| |
|
| condbranch(?branch,( f -- ) f83 question_branch, |
condbranch(?branch,( f -- ) f83 question_branch, |
| if (f==0) { |
if (f==0) { |
| IF_spTOS(spTOS = sp[0]); |
|
| ,: |
,: |
| 0= dup \ !f !f |
0= dup \ !f !f |
| r> dup @ \ !f !f IP branchoffset |
r> dup @ \ !f !f IP branchoffset |