summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
diff options
context:
space:
mode:
authorJames Molloy <james.molloy@arm.com>2012-01-26 09:25:43 +0000
committerJames Molloy <james.molloy@arm.com>2012-01-26 09:25:43 +0000
commit6685c08e5f91ab7d40b06d1eeb0943afc0c4ae54 (patch)
tree732542f29d02943edcebb5a7db0a77a31f889940 /llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
parent5f29b0e57b408f90201c39e20216823a21df60f9 (diff)
downloadbcm5719-llvm-6685c08e5f91ab7d40b06d1eeb0943afc0c4ae54.tar.gz
bcm5719-llvm-6685c08e5f91ab7d40b06d1eeb0943afc0c4ae54.zip
Add support for the R_ARM_TARGET1 relocation, which should be given to relocations applied to all C++ constructors and destructors.
This enables the linker to match concrete relocation types (absolute or relative) with whatever library or C++ support code is being linked against. llvm-svn: 149057
Diffstat (limited to 'llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp')
-rw-r--r--llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
index 67345bfc05f..2ad64de9886 100644
--- a/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
+++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
@@ -236,7 +236,10 @@ unsigned ARMELFObjectWriter::GetRelocTypeInner(const MCValue &Target,
case MCSymbolRefExpr::VK_ARM_GOTOFF:
Type = ELF::R_ARM_GOTOFF32;
break;
- }
+ case MCSymbolRefExpr::VK_ARM_TARGET1:
+ Type = ELF::R_ARM_TARGET1;
+ break;
+ }
break;
case ARM::fixup_arm_ldst_pcrel_12:
case ARM::fixup_arm_pcrel_10:
OpenPOWER on IntegriCloud