diff options
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h | 2 | ||||
-rw-r--r-- | llvm/test/ExecutionEngine/RuntimeDyld/X86/COFF_x86_64.s | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h index adaeae0702e..167708156dd 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h @@ -96,7 +96,7 @@ public: } case COFF::IMAGE_REL_AMD64_ADDR64: { - writeBytesUnaligned(0, Target, Value + RE.Addend); + writeBytesUnaligned(Value + RE.Addend, Target, 8); break; } diff --git a/llvm/test/ExecutionEngine/RuntimeDyld/X86/COFF_x86_64.s b/llvm/test/ExecutionEngine/RuntimeDyld/X86/COFF_x86_64.s index fc0f3e85147..a865bdbfc4c 100644 --- a/llvm/test/ExecutionEngine/RuntimeDyld/X86/COFF_x86_64.s +++ b/llvm/test/ExecutionEngine/RuntimeDyld/X86/COFF_x86_64.s @@ -28,6 +28,12 @@ inst1: .Ltmp2: .seh_endproc + .data + .globl x # @x +# rtdyld-check: *{8}x = F +x: + .quad F + # Make sure the JIT doesn't bail out on BSS sections. .bss bss_check: |