\r
[ 0 BL rc-relative-ppc-3 rt-xt-direct jit-rel ] jit-word-call jit-define\r
\r
-[ 0 B rc-relative-ppc-3 rt-xt ] jit-word-jump jit-define\r
+[ 0 B rc-relative-ppc-3 rt-xt jit-rel ] jit-word-jump jit-define\r
\r
[\r
3 ds-reg 0 LWZ\r
\r
[\r
jit->r\r
- 0 BL rc-relative-ppc-3 rt-xt\r
+ 0 BL rc-relative-ppc-3 rt-xt jit-rel\r
jit-r>\r
] jit-dip jit-define\r
\r
[\r
jit-2>r\r
- 0 BL rc-relative-ppc-3 rt-xt\r
+ 0 BL rc-relative-ppc-3 rt-xt jit-rel\r
jit-2r>\r
] jit-2dip jit-define\r
\r
[\r
jit-3>r\r
- 0 BL rc-relative-ppc-3 rt-xt\r
+ 0 BL rc-relative-ppc-3 rt-xt jit-rel\r
jit-3r>\r
] jit-3dip jit-define\r
\r
\r
! Comparisons\r
: jit-compare ( insn -- )\r
- 0 3 LOAD32\r
+ 0 3 LOAD32 rc-absolute-ppc-2/2 rt-immediate jit-rel\r
4 ds-reg 0 LWZ\r
5 ds-reg -4 LWZU\r
5 0 4 CMP\r
3 ds-reg 0 STW ;\r
\r
: define-jit-compare ( insn word -- )\r
- [ [ jit-compare ] curry rc-absolute-ppc-2/2 rt-immediate 1 ] dip\r
- define-sub-primitive ;\r
+ [ [ jit-compare ] curry ] dip define-sub-primitive ;\r
\r
\ BEQ \ eq? define-jit-compare\r
\ BGE \ fixnum>= define-jit-compare\r