diff options
| author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-08 01:35:57 +0000 |
|---|---|---|
| committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-08 01:35:57 +0000 |
| commit | fc6b85b18566ac3bc650a4c5ef33ad7836c2f3cf (patch) | |
| tree | b0068c854d37529a085723910222dac26fc35233 /llvm/lib | |
| parent | c45f3f743318c6831757679065d2ada749202003 (diff) | |
| download | bcm5719-llvm-fc6b85b18566ac3bc650a4c5ef33ad7836c2f3cf.tar.gz bcm5719-llvm-fc6b85b18566ac3bc650a4c5ef33ad7836c2f3cf.zip | |
ARM: support FK_SecRel_2 relocations on WoA
This adds FK_SecRel_2 relocation support to ARM. This enables the building of
object files for armv7-windows-msvc which enables CodeView line tables for
debugging as opposed to armv7-windows-itanium which currently uses DWARF.
llvm-svn: 208273
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp | 4 | ||||
| -rw-r--r-- | llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp index 900c7ca5b42..93ec46df07f 100644 --- a/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp +++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp @@ -344,6 +344,8 @@ static unsigned adjustFixupValue(const MCFixup &Fixup, uint64_t Value, case FK_Data_2: case FK_Data_4: return Value; + case FK_SecRel_2: + return Value; case FK_SecRel_4: return Value; case ARM::fixup_arm_movt_hi16: @@ -674,6 +676,8 @@ static unsigned getFixupKindNumBytes(unsigned Kind) { case ARM::fixup_t2_movw_lo16: return 4; + case FK_SecRel_2: + return 2; case FK_SecRel_4: return 4; } diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp index e3e6802fd3c..ba9df6e962c 100644 --- a/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp +++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp @@ -49,6 +49,8 @@ unsigned ARMWinCOFFObjectWriter::getRelocType(const MCValue &Target, default: return COFF::IMAGE_REL_ARM_ADDR32; } + case FK_SecRel_2: + return COFF::IMAGE_REL_ARM_SECTION; case FK_SecRel_4: return COFF::IMAGE_REL_ARM_SECREL; case ARM::fixup_t2_condbranch: |

