summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--thumb2copy.s6
1 files changed, 4 insertions, 2 deletions
diff --git a/thumb2copy.s b/thumb2copy.s
index 1a255bc..cbacb1b 100644
--- a/thumb2copy.s
+++ b/thumb2copy.s
@@ -78,11 +78,13 @@ end_copy0:
determine_free_finalizers_after_copy:
ldr BSTACK_0,[ASTACK_2]
- tst BSTACK_0,#1
+ tst BSTACK_0,#3
+ beq finalizer_not_used_after_copy
+ tst BSTACK_0,#0
beq finalizer_not_used_after_copy
ldr ASTACK_2,[ASTACK_2,#4]
- sub BSTACK_0,BSTACK_0,#1
+ add BSTACK_0,BSTACK_0,#1
str BSTACK_0,[ASTACK_0]
add ASTACK_0,BSTACK_0,#4
b determine_free_finalizers_after_copy