summaryrefslogtreecommitdiff
path: root/macho64/astartup.s
diff options
context:
space:
mode:
Diffstat (limited to 'macho64/astartup.s')
-rw-r--r--macho64/astartup.s8
1 files changed, 4 insertions, 4 deletions
diff --git a/macho64/astartup.s b/macho64/astartup.s
index 8f2bc01..41db2d3 100644
--- a/macho64/astartup.s
+++ b/macho64/astartup.s
@@ -2565,11 +2565,11 @@ end_garbage_collect:
mov qword ptr d3_flag_write_heap[rip],0
end_garbage_collect_:
+ push rax
+
test qword ptr _flags[rip],2
je no_heap_use_message
- push rax
-
mov rbp,rsp
and rsp,-16
@@ -2605,10 +2605,10 @@ end_garbage_collect_:
.endif
mov rsp,rbp
- pop rax
-
no_heap_use_message:
call call_finalizers
+
+ pop rax
test byte ptr _flags[rip],32
je no_write_heap