summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
diff options
context:
space:
mode:
authorJack Carter <jcarter@mips.com>2012-08-07 00:01:14 +0000
committerJack Carter <jcarter@mips.com>2012-08-07 00:01:14 +0000
commit4c58381c3a5506b9f2fe39975d96bdca65d7c2c2 (patch)
tree429fe95b1765fbaf35d4ad199954e95812f9602a /llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
parent0a5e1b840aaed19a36ebf19c38e34e669090a27e (diff)
downloadbcm5719-llvm-4c58381c3a5506b9f2fe39975d96bdca65d7c2c2.tar.gz
bcm5719-llvm-4c58381c3a5506b9f2fe39975d96bdca65d7c2c2.zip
Mips relocation R_MIPS_64 relocates a 64 bit double word.
I hit this in a very large program (spirit.cpp), but have not figured out how to make a small make check test for it. llvm-svn: 161366
Diffstat (limited to 'llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp')
-rw-r--r--llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp b/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
index 1ff304494e7..8e84b3f99f4 100644
--- a/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
+++ b/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
@@ -103,6 +103,9 @@ unsigned MipsELFObjectWriter::GetRelocType(const MCValue &Target,
case FK_Data_4:
Type = ELF::R_MIPS_32;
break;
+ case FK_Data_8:
+ Type = ELF::R_MIPS_64;
+ break;
case FK_GPRel_4:
Type = ELF::R_MIPS_GPREL32;
break;
OpenPOWER on IntegriCloud