llvm-project/llvm/test/CodeGen/Thumb
Ties Stuij 5cff77c23f [clang][ARM] PACBTI-M assembly support
Introduce assembly support for Armv8.1-M PACBTI extension. This is an optional
extension in v8.1-M.

There are 10 new system registers and 5 new instructions, all predicated on the
feature.

The attribute for llvm-mc is called "pacbti". For armclang, an architecture
extension also called "pacbti" was created.

This patch is part of a series that adds support for the PACBTI-M extension of
the Armv8.1-M architecture, as detailed here:

https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/armv8-1-m-pointer-authentication-and-branch-target-identification-extension

The PACBTI-M specification can be found in the Armv8-M Architecture Reference
Manual:

https://developer.arm.com/documentation/ddi0553/latest

The following people contributed to this patch:

- Victor Campos
- Ties Stuij

Reviewed By: labrinea

Differential Revision: https://reviews.llvm.org/D112420
2021-11-30 09:28:18 +00:00
..
2007-01-31-RegInfoAssert.ll
2007-02-02-JoinIntervalsCrash.ll
2007-05-05-InvalidPushPop.ll
2009-06-18-ThumbCommuteMul.ll
2009-07-20-TwoAddrBug.ll
2009-07-27-PEIAssert.ll
2009-08-12-ConstIslandAssert.ll
2009-08-12-RegInfoAssert.ll
2009-08-20-ISelBug.ll
2009-12-17-pre-regalloc-taildup.ll
2010-06-18-SibCallCrash.ll
2010-07-01-FuncAlign.ll
2010-07-15-debugOrdering.ll OpaquePtr: Update more tests to use typed sret 2020-11-20 20:08:43 -05:00
2011-05-11-DAGLegalizer.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
2011-06-16-NoGPRs.ll
2011-EpilogueBug.ll
2012-04-26-M0ISelBug.ll
2014-06-10-thumb1-ldst-opt-bug.ll
DbgValueOtherTargets.test
PR17309.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
PR35481.ll [ARM] Change a couple of instances of LiveRegs.contains to !LiveRegs.available 2021-08-10 09:53:26 +01:00
PR36658.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
addr-modes.ll
and_neg.ll
asmprinter-bug.ll
barrier.ll
bic_imm.ll
branchless-cmp.ll
callee_save.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
cmp-add-fold.ll [ARM] Regenerate some test checks. NFC 2021-03-24 15:34:34 +00:00
cmp-and-fold.ll
cmp-fold.ll [ARM] Regenerate some test checks. NFC 2021-03-24 15:34:34 +00:00
constants.ll
consthoist-few-dependents.ll
consthoist-imm8-costs-1.ll
consthoist-physical-addr.ll
copy_thumb.ll
cortex-m0-unaligned-access.ll
dyn-stackalloc.ll Revert "Allow rematerialization of virtual reg uses" 2021-09-24 10:26:11 -07:00
emergency-spill-slot.ll [TwoAddressInstructionPass] Update existing physreg live intervals 2021-11-05 21:20:30 +00:00
fastcc.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
fpconv.ll
fpow.ll
frame-access.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
frame_thumb.ll
high-reg-clobber.mir [clang][ARM] PACBTI-M assembly support 2021-11-30 09:28:18 +00:00
i8-phi-ext.ll
iabs-vector.ll
iabs.ll
inline-asm-i-constraint-i1.ll
inlineasm-imm-thumb.ll
inlineasm-thumb.ll
ispositive.ll [ARM] Regenerate some test checks. NFC 2021-03-24 15:34:34 +00:00
large-fn-switch.ll
large-stack.ll [ARM] Remove more unused check prefixes, NFC 2020-11-14 15:37:53 +00:00
ldm-merge-call.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
ldm-merge-struct.ll
ldm-stm-base-materialization-thumb2.ll
ldm-stm-base-materialization.ll
ldm-stm-postinc.ll [ARM] Make sure we don't transform unaligned store to stm on Thumb1. 2021-06-21 14:32:42 -07:00
ldr_ext.ll [ARM] Use lrdsb for more thumb1 loads. 2021-03-17 15:29:02 +00:00
ldr_frame.ll
lit.local.cfg
litpoolremat.ll
long-setcc.ll
long.ll Revert "ARM-Darwin: keep the frame register reserved even if not updated." 2019-12-06 10:59:26 -08:00
long_shift.ll
machine-cse-deadreg.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
machine-cse-physreg.mir
mature-mc-support.ll
mul.ll
mvn.ll
opt-phis.mir
optionaldef-scheduling.ll
peephole-cmp.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
peephole-mi.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
pop.ll
pr35836.ll
pr35836_2.ll [TwoAddressInstructionPass] Improve the SrcRegMap and DstRegMap computation 2021-10-11 15:28:31 -07:00
pr42760.ll
push.ll
ragreedy-implicit-def.ll
rev.ll
scheduler-clone-cpsr-def.ll
segmented-stacks-dynamic.ll
segmented-stacks.ll
select.ll
shift-and.ll
sjljehprepare-lower-vector.ll
srem-seteq-illegal-types.ll [TwoAddressInstructionPass] Create register mapping for registers with multiple uses in the current MBB 2021-11-29 19:01:59 -08:00
stack-access.ll
stack-coloring-without-frame-ptr.ll
stack-frame.ll
stack-mis-alignment.ll [ARM][ConstantIslands] Fix stack mis-alignment caused by undoLRSpillRestore. 2020-03-02 16:28:57 -08:00
stack_guard_remat.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
stm-deprecated.ll [ARM] Don't shrink STM if it would cause an unknown base register store 2020-04-22 14:50:42 +01:00
stm-merge.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
stm-scavenging.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
tbb-reuse.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
thumb-imm.ll
thumb-ldm.ll
thumb-shrink-wrapping.ll
thumb1-cmp.ll
trap.ll
triple.ll
tst_teq.ll
umulo-32-legalisation-lowering.ll
umulo-128-legalisation-lowering.ll Do not generate calls to the 128-bit function __multi3() on 32-bit ARM 2021-06-11 11:45:21 +01:00
unord.ll
urem-seteq-illegal-types.ll [ARM] Implement target hook function to decide folding (mul (add x, c1), c2) 2021-09-07 15:42:43 +08:00
uxth.ll
vargs.ll