summaryrefslogtreecommitdiff
path: root/lib/Target
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2009-07-14 21:46:40 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2009-07-14 21:46:40 +0000
commitf6fbad15f7f5c49e1f3b2b1b62f4614fd1146675 (patch)
tree85eb88015bdb11ea62f1fcde6f1e9d31d84eeb61 /lib/Target
parent8718bc4497b3f7e6e5dde16845179744d54988bf (diff)
downloadllvm-f6fbad15f7f5c49e1f3b2b1b62f4614fd1146675.tar.gz
llvm-f6fbad15f7f5c49e1f3b2b1b62f4614fd1146675.tar.bz2
llvm-f6fbad15f7f5c49e1f3b2b1b62f4614fd1146675.tar.xz
Use the right relocation type for X86::MOV64ri64i32
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75687 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r--lib/Target/X86/X86CodeEmitter.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Target/X86/X86CodeEmitter.cpp b/lib/Target/X86/X86CodeEmitter.cpp
index 30bbc5cc8e..0831449841 100644
--- a/lib/Target/X86/X86CodeEmitter.cpp
+++ b/lib/Target/X86/X86CodeEmitter.cpp
@@ -636,6 +636,8 @@ void Emitter<CodeEmitter>::emitInstruction(
else {
unsigned rt = Is64BitMode ? X86::reloc_pcrel_word
: (IsPIC ? X86::reloc_picrel_word : X86::reloc_absolute_word);
+ if (Opcode == X86::MOV64ri64i32)
+ rt = X86::reloc_absolute_word; // FIXME: add X86II flag?
// This should not occur on Darwin for relocatable objects.
if (Opcode == X86::MOV64ri)
rt = X86::reloc_absolute_dword; // FIXME: add X86II flag?