diff options
-rw-r--r-- | thumb2compact_rmark.s | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/thumb2compact_rmark.s b/thumb2compact_rmark.s index ab0ab1b..5acfa91 100644 --- a/thumb2compact_rmark.s +++ b/thumb2compact_rmark.s @@ -102,7 +102,12 @@ rmark_node_: orr ASTACK_2,ASTACK_2,BSTACK_0
str ASTACK_2,[HEAP_PTR,ASTACK_1,lsl #2]
- ldr BSTACK_0,[ASTACK_0]
+ @ldr BSTACK_0,[ASTACK_0]
+ ands lr,ASTACK_0,#1
+ it eq
+ ldreq BSTACK_0,[ASTACK_0]
+ it ne
+ ldrne BSTACK_0,[ASTACK_0,#-1]
rmark_arguments:
cmp ASTACK_0,BSTACK_1
bhi rmark_no_reverse
|