diff options
author | Lang Hames <lhames@gmail.com> | 2015-10-23 18:46:43 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2015-10-23 18:46:43 +0000 |
commit | 3fef117ba5a48ffa2af1e3fb9f99dbc376fd588f (patch) | |
tree | 6a41902cb7fe62ae43558df57e5681103772fece | |
parent | 8f30a65ca3a92bf434bb97eb3d224b1ea80bdde9 (diff) | |
download | bcm5719-llvm-3fef117ba5a48ffa2af1e3fb9f99dbc376fd588f.tar.gz bcm5719-llvm-3fef117ba5a48ffa2af1e3fb9f99dbc376fd588f.zip |
[RuntimeDyld][COFF] Fix a think-o in the handling of the IMAGE_REL_AMD64_ADDR64
relocation that was introduced in r250733.
llvm-svn: 251135
-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: |