diff options
author | John van Groningen | 2013-07-03 12:43:33 +0000 |
---|---|---|
committer | John van Groningen | 2013-07-03 12:43:33 +0000 |
commit | 04fa833046f879369f008eda3ad0068418edb0e1 (patch) | |
tree | 039d2af2c3e00cabc5d3baee3ec09ffd4c8d01a2 | |
parent | if PIC is defined, make some code position independent (diff) |
if PIC is defined, make more code position independent
-rw-r--r-- | acompact_rmark_prefetch.asm | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/acompact_rmark_prefetch.asm b/acompact_rmark_prefetch.asm index f5116b5..77df8a2 100644 --- a/acompact_rmark_prefetch.asm +++ b/acompact_rmark_prefetch.asm @@ -279,9 +279,16 @@ rmarkp_add_item3: mov rbp,qword ptr rmarkp_queue_first+0 mov rdx,qword ptr rmarkp_n_queue_items_16+0 + ifdef PIC + lea r9,rmarkp_queue+0 + mov qword ptr [r9+rbp],rcx + mov qword ptr 8[r9+rbp],rsi + mov qword ptr 16[r9+rbp],rsi + else mov qword ptr rmarkp_queue[rbp],rcx mov qword ptr rmarkp_queue+8[rbp],rsi mov qword ptr rmarkp_queue+16[rbp],rsi + endif add rbp,32 and rbp,7*32 @@ -330,8 +337,13 @@ rmarkp_last_item_in_queue: mov rax,qword ptr neg_heap_p3+0 + ifdef PIC + mov rsi,qword ptr 8[r9+rbx] + mov rbx,qword ptr 16[r9+rbx] + else mov rsi,qword ptr rmarkp_queue+8[rbx] mov rbx,qword ptr rmarkp_queue+16[rbx] + endif add rax,rcx |