[all-commits] [llvm/llvm-project] dc49fb: [ARM] add Thumb-1 8-bit movs/adds relocations to LLVM
Ties Stuij via All-commits
all-commits at lists.llvm.org
Thu Jun 22 08:36:01 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: dc49fbd2df7dd7236dda0d94c1f091aeba532886
https://github.com/llvm/llvm-project/commit/dc49fbd2df7dd7236dda0d94c1f091aeba532886
Author: Ties Stuij <ties.stuij at arm.com>
Date: 2023-06-22 (Thu, 22 Jun 2023)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELFRelocs/ARM.def
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMFixupKinds.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.h
M llvm/test/MC/ARM/negative-immediates-thumb1-fail.s
A llvm/test/MC/ARM/thumb-8-bit-relocs.s
M llvm/test/MC/ARM/thumb-diagnostics.s
A llvm/test/MC/ARM/thumb-fixups.s
Log Message:
-----------
[ARM] add Thumb-1 8-bit movs/adds relocations to LLVM
This patch adds the LLVM-side plumbing for the following relocations:
- R_ARM_THM_ALU_ABS_G0_NC
- R_ARM_THM_ALU_ABS_G1_NC
- R_ARM_THM_ALU_ABS_G2_NC
- R_ARM_THM_ALU_ABS_G3
(see section 5.6.1.5, Static Thumb16 relocations, of the AArch32 ELF Arm ABI:
https://github.com/ARM-software/abi-aa/blob/844a79fd4c77252a11342709e3b27b2c9f590cf1/aaelf32/aaelf32.rst#5615static-thumb16-relocations)
Which can respectivly be generated by prefixing assembly symbols with:
- :lower0_7:
- :lower8_15:
- :upper0_7:
- :upper8_15:
LLD support for these relocations will be added in a follow-up patch
Reviewed By: john.brawn, MaskRay
Differential Revision: https://reviews.llvm.org/D149443
More information about the All-commits
mailing list