1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00
llvm-mirror/test/MC
Pablo Barrio 025fa2bbb5 [AArch64] Emit HINT instead of PAC insns in Armv8.2-A or below
Summary:
The Pointer Authentication Extension (PAC) was added in Armv8.3-A. Some
instructions are implemented in the HINT space to allow compiling code
common to CPUs regardless of whether they feature PAC or not, and still
benefit from PAC protection in the PAC-enabled CPUs.

The 8.3-specific mnemonics were currently enabled in any architecture, and
LLVM was emitting them in assembly files when PAC code generation was
enabled. This was ok for compilations where both LLVM codegen and the
integrated assembler were used. However, the LLVM codegen was not
compatible with other assemblers (e.g. GAS). Given the fact that the
approach from these assemblers (i.e. to disallow Armv8.3-A mnemonics if
compiling for Armv8.2-A or lower) is entirely reasonable, this patch makes
LLVM to emit HINT when building for Armv8.2-A and below, instead of
PACIASP, AUTIASP and friends. Then, LLVM assembly should be compatible
with other assemblers.

Reviewers: samparker, chill, LukeCheeseman

Subscribers: kristof.beyls, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D71658
2020-01-13 14:14:48 +00:00
..
AArch64 [AArch64] Emit HINT instead of PAC insns in Armv8.2-A or below 2020-01-13 14:14:48 +00:00
AMDGPU [AMDGPU] Add gfx8 assembler and disassembler test cases 2020-01-12 21:12:48 +00:00
ARM [MC][ELF] Emit a relocation if target is defined in the same section and is non-local 2020-01-12 13:46:24 -08:00
AsmParser MCObjectStreamer: assign MCSymbols in the dummy fragment to offset 0. 2019-11-16 09:52:07 -05:00
AVR Fixup AVR tests to reflect changes in addend format in llvm-objdump 2019-11-19 15:32:58 +00:00
BPF [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
COFF Revert "[COFF] Make the autogenerated .weak.<name>.default symbols static" 2019-12-28 23:45:50 +02:00
Disassembler [AMDGPU] Add gfx8 assembler and disassembler test cases 2020-01-12 21:12:48 +00:00
ELF [MC][ELF] Emit a relocation if target is defined in the same section and is non-local 2020-01-12 13:46:24 -08:00
Hexagon Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
Lanai [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
MachO [PowerPC] Delete PPCDarwinAsmPrinter and PPCMCAsmInfoDarwin 2020-01-12 11:02:02 -08:00
Mips [MIPS][ELF] Use PC-relative relocations in .eh_frame when possible 2020-01-13 14:14:03 +00:00
MSP430 [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
PowerPC [PowerPC] Delete PPCDarwinAsmPrinter and PPCMCAsmInfoDarwin 2020-01-12 11:02:02 -08:00
RISCV [RISCV] Check register class for AMO memory operands 2020-01-13 00:50:37 +00:00
Sparc [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
SystemZ [SystemZ] Improve handling of huge PC relative immediate offsets. 2019-11-04 10:38:18 +01:00
WebAssembly Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
X86 [MC][ELF] Emit a relocation if target is defined in the same section and is non-local 2020-01-12 13:46:24 -08:00