]> granicus.if.org Git - llvm/commit
Fully fix the movw/movt addend.
authorRafael Espindola <rafael.espindola@gmail.com>
Tue, 11 Jul 2017 23:18:25 +0000 (23:18 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Tue, 11 Jul 2017 23:18:25 +0000 (23:18 +0000)
commit4aebf83110897f95aebb6945c7c7e7489c0779a8
tree9b397a2a25ac0b4e780e8facc6a3e67866ee3c2d
parentdd0b140c37c1b86bd0b09fb518f2c1fce6476a2b
Fully fix the movw/movt addend.

The issue is not if the value is pcrel. It is whether we have a
relocation or not.

If we have a relocation, the static linker will select the upper
bits. If we don't have a relocation, we have to do it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@307730 91177308-0d34-0410-b5e6-96231b3b80d8
17 files changed:
include/llvm/MC/MCAsmBackend.h
lib/MC/MCAssembler.cpp
lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
test/MC/ARM/elf-movt.s