llvm-project/llvm/test/CodeGen/Thumb2
Sam Parker ff9ac33e1e [ARM][MVE] Validate tail predication values
Iterate through the loop and check that the observable values
produced are the same whether tail predication happens or not.

We want to find out if the tail-predicated version of this loop will
produce the same values as the loop in its original form. For this to
be true, the newly inserted implicit predication must not change the
the (observable) results.

We're doing this because many instructions in the loop will not be
predicated and so the conversion from VPT predication to tail
predication can result in different values being produced, because of
falsely predicated lanes not being updated in the converted form.

A masked load, whether through VPT or tail predication, will write
zeros to any of the falsely predicated bytes. So, from the loads, we
know that the false lanes are zeroed and here we're trying to track
that those false lanes remain zero, or where they change, the
differences are masked away by their user(s).

All MVE loads and stores have to be predicated, so we know that any
load operands, or stored results are equivalent already. Other
explicitly predicated instructions will perform the same operation in
the original loop and the tail-predicated form too. Because of this,
we can insert loads, stores and other predicated instructions into
our KnownFalseZeros set and build from there.

Differential Revision: https://reviews.llvm.org/D75452
2020-03-10 09:59:01 +00:00
..
LowOverheadLoops [ARM][MVE] Validate tail predication values 2020-03-10 09:59:01 +00:00
mve-intrinsics [ARM,MVE] Add the `vshlcq` intrinsics. 2020-03-04 08:49:27 +00:00
2009-07-17-CrossRegClassCopy.ll
2009-07-21-ISelBug.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
2009-07-23-CPIslandBug.ll
2009-07-30-PEICrash.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-08-01-WrongLDRBOpc.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-08-02-CoalescerBug.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-08-04-CoalescerAssert.ll
2009-08-04-CoalescerBug.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-08-04-ScavengerAssert.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-08-04-SubregLoweringBug.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
2009-08-04-SubregLoweringBug2.ll
2009-08-04-SubregLoweringBug3.ll
2009-08-06-SpDecBug.ll
2009-08-07-CoalescerBug.ll
2009-08-07-NeonFPBug.ll
2009-08-08-ScavengerAssert.ll
2009-08-10-ISelBug.ll
2009-08-21-PostRAKill4.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-09-01-PostRAProlog.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-10-15-ITBlockBranch.ll
2009-11-01-CopyReg2RegBug.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2009-11-11-ScavengerAssert.ll
2009-11-13-STRDBug.ll
2009-12-01-LoopIVUsers.ll
2010-01-06-TailDuplicateLabels.ll Work around grep vs. CRLF issue in Thumb2 test by matching excess whitespace 2018-09-18 00:04:29 +00:00
2010-01-19-RemovePredicates.ll
2010-02-11-phi-cycle.ll [MBP] Avoid tail duplication if it can't bring benefit 2019-12-06 09:53:53 -08:00
2010-02-24-BigStack.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2010-03-08-addi12-ccout.ll
2010-03-15-AsmCCClobber.ll Revert "ARM-Darwin: keep the frame register reserved even if not updated." 2019-12-06 10:59:26 -08:00
2010-04-15-DynAllocBug.ll [ARM] Run ARMParallelDSP in the IRPasses phase 2019-03-14 10:57:40 +00:00
2010-04-26-CopyRegCrash.ll
2010-05-24-rsbs.ll
2010-06-14-NEONCoalescer.ll [CodeGen] Don't print "pred:" and "opt:" in -debug output 2018-01-09 17:31:07 +00:00
2010-06-19-ITBlockCrash.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2010-06-21-TailMergeBug.ll [ARM] Remove EarlyCSE from backend 2019-03-15 13:36:37 +00:00
2010-08-10-VarSizedAllocaBug.ll
2010-11-22-EpilogueBug.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
2010-12-03-AddSPNarrowing.ll
2011-04-21-FILoweringBug.ll
2011-06-07-TwoAddrEarlyClobber.ll
2011-12-16-T2SizeReduceAssert.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2012-01-13-CBNZBug.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
2013-02-19-tail-call-register-hint.ll
2013-03-02-vduplane-nonconstant-source-index.ll
2013-03-06-vector-sext-operand-scalarize.ll
aapcs.ll [ARM] Replace fp-only-sp and d16 with fp64 and d32. 2019-05-28 16:13:20 +00:00
aligned-constants.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
aligned-spill.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
bfi.ll
bfx.ll
bicbfi.ll [CodeGen] Always use `printReg` to print registers in both MIR and debug 2017-11-30 16:12:24 +00:00
bug-subw.ll [ARM][Thumb2] Fix ADD/SUB invalid writes to SP 2020-01-14 11:47:19 +00:00
buildvector-crash.ll
call-site-info-update.ll [CallSiteInfo] Handle bundles when updating call site info 2020-02-27 13:57:06 +01:00
carry.ll
cbnz.ll [MBP] Avoid tail duplication if it can't bring benefit 2019-12-06 09:53:53 -08:00
cmp-frame.ll ARM: Don't rewrite add reg, $sp, 0 -> mov reg, $sp if the add defines CPSR. 2018-02-27 19:00:59 +00:00
constant-hoisting.ll [DAG] Refactor DAGCombiner::ReassociateOps 2019-04-29 17:50:10 +00:00
constant-islands-cbz.ll [ARM] Search backwards for CMP when combining into CBZ 2019-03-17 16:11:22 +00:00
constant-islands-cbz.mir Revert "[ARM] Add CPSR as an implicit use of t2IT" 2020-02-27 15:43:44 +00:00
constant-islands-jump-table.ll
constant-islands-new-island-padding.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
constant-islands-new-island.ll
constant-islands.ll [ARM] Fix for buildbots 2019-09-17 14:21:36 +00:00
cortex-fp.ll
crash.ll
cross-rc-coalescing-1.ll
cross-rc-coalescing-2.ll [DAG] Move integer setcc %x, %x folding into FoldSetCC 2019-03-13 11:08:57 +00:00
csel.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
div.ll
emit-unwinding.ll [ARM][Thumb][FIX] Add unwinding information to t4 2019-12-30 15:59:48 +00:00
float-cmp.ll [TargetLowering][ARM][X86] Change softenSetCCOperands handling of ONE to avoid spurious exceptions for QNANs with strict FP quiet compares 2020-01-10 11:00:17 -08:00
float-intrinsics-double.ll [ARM] Use isFMAFasterThanFMulAndFAdd for scalars as well as MVE vectors 2020-01-05 11:24:04 +00:00
float-intrinsics-float.ll [ARM] Use isFMAFasterThanFMulAndFAdd for scalars as well as MVE vectors 2020-01-05 11:24:04 +00:00
float-ops.ll [ARM] Split large truncating MVE stores 2019-09-24 10:10:41 +00:00
fp16-stacksplot.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
frame-pointer.ll Migrate function attribute "no-frame-pointer-elim-non-leaf" to "frame-pointer"="non-leaf" as cleanups after D56351 2019-12-24 16:05:15 -08:00
frameless.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
frameless2.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
high-reg-spill.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
ifcvt-cbz.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
ifcvt-compare.ll
ifcvt-minsize.ll [ARM] Don't replicate instructions in Ifcvt at minsize 2019-04-23 11:46:58 +00:00
ifcvt-neon-deprecated.mir [ARM][ReachingDefs] RDA in LoLoops 2019-11-26 10:13:46 +00:00
ifcvt-no-branch-predictor.ll [ARM] Cortex-M4 schedule 2019-05-15 12:41:58 +00:00
ifcvt-rescan-bug-2016-08-22.ll [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
ifcvt-rescan-diamonds.ll
inflate-regs.ll
inline-asm-i-constraint-i1.ll [TargetLowering] Extend bool args to inline-asm according to getBooleanType 2019-05-22 16:16:15 +00:00
inlineasm-error-t-toofewregs-mve.ll [ARM] Support inline assembler constraints for MVE. 2019-06-25 16:49:32 +00:00
inlineasm-mve.ll [ARM] Support inline assembler constraints for MVE. 2019-06-25 16:49:32 +00:00
inlineasm.ll
intrinsics-cc.ll [ARM] Honor -mfloat-abi for libcall calling convention 2017-10-26 21:42:32 +00:00
intrinsics-coprocessor.ll
large-call.ll [ARM][THUMB2] Allow emitting T3 types of add and sub 2019-12-30 11:03:58 +00:00
large-stack.ll
ldr-str-imm12.ll Revert "[NFC][ARM] Update test" 2020-02-28 09:14:50 -08:00
lit.local.cfg [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
longMACt.ll
lsll0.ll [TargetLowering] SimplifyDemandedBits - call SimplifyMultipleUseDemandedBits for ISD::EXTRACT_VECTOR_ELT (REAPPLIED) 2020-01-04 13:15:50 +00:00
lsr-deficiency.ll
m4-sched-ldr.mir [Alignment] Use llvm::Align in MachineFunction and TargetLowering - fixes mir parsing 2019-09-11 11:16:48 +00:00
m4-sched-regs.ll [ARM] Don't use the Machine Scheduler for cortex-m at minsize 2019-05-15 12:58:02 +00:00
machine-licm.ll Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
mul_const.ll
mve-abs.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
mve-basic.ll [ARM] MVE loads and stores 2019-06-28 08:41:40 +00:00
mve-be.ll [ARM,MVE] Fix vreinterpretq in big-endian mode. 2020-02-03 11:20:06 +00:00
mve-bitarith.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-bitcasts.ll [ARM] MVE vector shuffles 2019-06-28 07:08:42 +00:00
mve-bitreverse.ll [ARM] Add patterns for bitreverse intrinsic on MVE 2019-09-16 15:20:03 +00:00
mve-bswap.ll [ARM] Add patterns for BSWAP intrinsic on MVE 2019-09-16 15:20:10 +00:00
mve-ctlz.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-ctpop.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-cttz.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-div-expand.ll [ARM] Fixup FP16 bitcasts 2020-02-27 12:19:31 +00:00
mve-extractelt.ll [ARM,MVE] Use VMOV.{S8,S16} for sign-extended extractelement. 2019-11-13 09:08:41 +00:00
mve-fmas.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-fmath.ll [ARM] Fixup FP16 bitcasts 2020-02-27 12:19:31 +00:00
mve-fp-negabs.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-frint.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-gather-ind8-unscaled.ll [ARM][MVE] Masked gathers from base + vector of offsets 2020-01-14 10:33:52 +00:00
mve-gather-ind16-scaled.ll [ARM][MVE] Masked gathers from base + vector of offsets 2020-01-14 10:33:52 +00:00
mve-gather-ind16-unscaled.ll [ARM][MVE] Restrict allowed types of gather/scatter offsets 2020-03-02 10:04:12 +00:00
mve-gather-ind32-scaled.ll [ARM][MVE] Enable extending gathers 2020-01-16 15:24:54 +00:00
mve-gather-ind32-unscaled.ll [ARM][MVE] Enable extending gathers 2020-01-16 15:24:54 +00:00
mve-gather-ptrs.ll [ARM] Favour post inc for MVE loops 2020-01-20 06:57:07 +00:00
mve-gather-scatter-opt.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-ldst-offset.ll [ARM] Fix MVE ldst offset ranges 2019-09-03 09:57:02 +00:00
mve-ldst-postinc.ll [ARM] More MVE load/store tests for offsets around the negative limit. NFC 2019-09-03 09:42:16 +00:00
mve-ldst-preinc.ll [ARM] More MVE load/store tests for offsets around the negative limit. NFC 2019-09-03 09:42:16 +00:00
mve-ldst-regimm.ll [ARM] Add support for MVE pre and post inc loads and stores 2019-08-08 15:27:58 +00:00
mve-loadstore.ll [ARM] Fix MVE ldst offset ranges 2019-09-03 09:57:02 +00:00
mve-masked-ldst-offset.ll [ARM] Enable MVE masked loads and stores 2019-12-09 11:37:34 +00:00
mve-masked-ldst-postinc.ll [ARM] Enable MVE masked loads and stores 2019-12-09 11:37:34 +00:00
mve-masked-ldst-preinc.ll [ARM] Enable MVE masked loads and stores 2019-12-09 11:37:34 +00:00
mve-masked-ldst.ll [ARM] Fixup FP16 bitcasts 2020-02-27 12:19:31 +00:00
mve-masked-load.ll [ARM] Enable MVE masked loads and stores 2019-12-09 11:37:34 +00:00
mve-masked-store.ll [ARM] Fixup FP16 bitcasts 2020-02-27 12:19:31 +00:00
mve-minmax.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
mve-multivec-spill.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-neg.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-nofloat.ll [ARM] Add test for MVE and no floats. NFC 2019-07-09 14:43:17 +00:00
mve-phireg.ll [ARM] Fixup FP16 bitcasts 2020-02-27 12:19:31 +00:00
mve-postinc-lsr.ll [LSR] Add masked load and store handling 2020-03-04 18:36:10 +00:00
mve-pred-and.ll [ARM,MVE] Add reversed isel patterns for MVE `vcmp qN,rN` 2019-11-15 14:06:00 +00:00
mve-pred-bitcast.ll [ARM] A predicate cast of a predicate cast is a predicate cast 2019-09-16 17:29:07 +00:00
mve-pred-build-const.ll [ARM] MVE predicate register support 2019-07-24 11:51:36 +00:00
mve-pred-build-var.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-pred-ext.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
mve-pred-loadstore.ll [ARM] A predicate cast of a predicate cast is a predicate cast 2019-09-16 17:29:07 +00:00
mve-pred-not.ll [ARM] Fold VCMP into VPT 2019-09-16 13:02:41 +00:00
mve-pred-or.ll [ARM] Fold VCMP into VPT 2019-09-16 13:02:41 +00:00
mve-pred-shuffle.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +00:00
mve-pred-spill.ll [ARM] MVE big endian loads/stores 2019-08-08 15:15:19 +00:00
mve-pred-threshold.ll [ARM] Sink splat to ICmp 2019-12-30 12:58:14 +00:00
mve-pred-xor.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
mve-saturating-arith.ll [ARM] VQSUB instruction 2019-10-10 16:34:30 +00:00
mve-scatter-ind8-unscaled.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-scatter-ind16-scaled.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-scatter-ind16-unscaled.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-scatter-ind32-scaled.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-scatter-ind32-unscaled.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-scatter-ptrs.ll [ARM][MVE] Enable masked scatter 2020-01-21 09:46:26 +00:00
mve-sext.ll [DAGCombine] Initialize the default operation action for SIGN_EXTEND_INREG for vector type as 'expand' instead of 'legal' 2020-01-03 03:26:41 +00:00
mve-shifts-scalar.ll [ARM] Favour post inc for MVE loops 2020-01-20 06:57:07 +00:00
mve-shifts.ll [ARM][MVE] Sink vector shift operand 2019-12-12 14:34:00 +00:00
mve-shuffle.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +00:00
mve-shuffleext.ll [ARM,MVE] Add the vmovlbq,vmovltq intrinsic family. 2020-02-18 09:34:50 +00:00
mve-shufflemov.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +00:00
mve-simple-arith.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-soft-float-abi.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-stack.ll [ARM] Add a SelectTAddrModeImm7 for MVE narrow loads and stores 2019-09-17 15:32:28 +00:00
mve-stacksplot.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vaddqr.ll [ARM] Add patterns for VADD with q and r registers 2019-09-06 17:02:35 +00:00
mve-vaddv.ll [ARM] Use reduction intrinsics for larger than legal reductions 2020-01-24 17:07:24 +00:00
mve-vcmp.ll [ARM] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +00:00
mve-vcmpf.ll [ARM] Generate vcmp instead of vcmpe 2019-10-08 08:25:42 +00:00
mve-vcmpfr.ll [ARM] More reversed vcmp tests. NFC 2019-12-02 19:57:12 +00:00
mve-vcmpfz.ll [ARM] Add some VCMP folding and canonicalisation 2019-12-02 19:57:12 +00:00
mve-vcmpr.ll [ARM] More reversed vcmp tests. NFC 2019-12-02 19:57:12 +00:00
mve-vcmpz.ll [ARM] More reversed vcmp tests. NFC 2019-12-02 19:57:12 +00:00
mve-vctp.ll [ARM,MVE] Rename and clean up VCTP IR intrinsics. 2019-12-02 16:20:30 +00:00
mve-vcvt.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-vdup.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-vecreduce-add.ll [ARM] MVE VADDLV lowering 2020-02-19 11:07:20 +00:00
mve-vecreduce-fadd.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-vecreduce-fminmax.ll [AsmPrinter] Print FP constant in hexadecimal form instead 2020-02-07 16:00:55 +00:00
mve-vecreduce-fmul.ll [ARM] MVE vector reduction fadd and fmul tests. NFC 2020-02-03 22:03:56 +00:00
mve-vecreduce-mla.ll [ARM] VMLAVA reduction patterns 2020-02-19 12:39:58 +00:00
mve-vector-spill.ll [ARM] MVE spill vector test. NFC 2019-08-11 09:12:57 +00:00
mve-vfma.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +00:00
mve-vhaddsub.ll [ARM] Remove VHADD patterns 2019-12-02 10:38:14 +00:00
mve-vld2-post.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vld2.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vld3.ll [TargetLowering] SimplifyDemandedBits - call SimplifyMultipleUseDemandedBits for ISD::EXTRACT_VECTOR_ELT (REAPPLIED) 2020-01-04 13:15:50 +00:00
mve-vld4-post.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vld4.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vldst4.ll [ARM] Favour post inc for MVE loops 2020-01-20 06:57:07 +00:00
mve-vmaxv.ll [ARM] Simplify and update vmla test. NFC 2019-09-15 11:53:05 +00:00
mve-vmla.ll [ARM] MVE VMLAS 2020-02-28 14:27:21 +00:00
mve-vmovimm.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-vmovn.ll [ARM] Fix ReconstructShuffle for bigendian 2020-02-13 09:56:46 +00:00
mve-vmull.ll [ARM] MVE VMULL tests. NFC 2020-03-08 14:39:08 +00:00
mve-vmulqr.ll [ARM] Add patterns for VMUL with q and r registers 2019-09-06 17:02:21 +00:00
mve-vmvnimm.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-vpsel.ll [ARM] MVE predicate bitcast test and VPSEL adjustment. NFC 2019-09-02 19:03:35 +00:00
mve-vpt-2-blocks-1-pred.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-2-blocks-2-preds.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-2-blocks-ctrl-flow.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-2-blocks-non-consecutive-ins.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-2-blocks.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-3-blocks-kill-vpr.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-block-1-ins.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-block-2-ins.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-block-4-ins.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-block-fold-vcmp.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-block-optnone.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vpt-from-intrinsics.ll [ARM] Reegenerate MVE tests. NFC 2020-01-15 08:10:38 +00:00
mve-vpt-nots.mir [ARM] Change all tests from "thumbv8.1-m.main" to "thumbv8.1m.main". NFC 2020-03-04 13:47:35 +00:00
mve-vpt-preuse.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
mve-vst2-post.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vst2.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vst3.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +00:00
mve-vst4-post.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vst4.ll [ARM] MVE VLDn postinc 2020-01-20 06:57:07 +00:00
mve-vsubqr.ll [ARM] Add patterns for VSUB with q and r registers 2019-09-06 17:02:42 +00:00
mve-widen-narrow.ll [ARM] Split large widening MVE loads 2019-09-24 10:53:09 +00:00
peephole-addsub.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
peephole-cmp.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
pic-load.ll
segmented-stacks.ll [ARM] Use the correct opcodes for Thumb2 segmented stack frame lowering 2020-01-06 16:38:49 +00:00
setjmp_longjmp.ll
stack_guard_remat.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
t2-teq-reduce.mir Revert "[ARM] Add CPSR as an implicit use of t2IT" 2020-02-27 15:43:44 +00:00
t2peephole-t2ADDrr-to-t2ADDri.ll [ARM][Thumb2] Fix ADD/SUB invalid writes to SP 2020-01-14 11:47:19 +00:00
t2sizereduction.mir [MIR][ARM] MachineOperand comments 2020-02-24 14:19:21 +00:00
tail-call-r9.ll
tbb-removeadd.mir [Alignment] Use llvm::Align in MachineFunction and TargetLowering - fixes mir parsing 2019-09-11 11:16:48 +00:00
thumb2-adc.ll
thumb2-add.ll
thumb2-add2.ll
thumb2-add3.ll
thumb2-add4.ll
thumb2-add5.ll
thumb2-add6.ll
thumb2-and.ll
thumb2-and2.ll
thumb2-asr.ll
thumb2-asr2.ll
thumb2-bcc.ll
thumb2-bfc.ll
thumb2-bic.ll
thumb2-branch.ll
thumb2-call-tc.ll
thumb2-call.ll
thumb2-cbnz.ll
thumb2-clz.ll
thumb2-cmn.ll [ARM] Materialise some boolean values to avoid a branch 2018-02-16 09:23:59 +00:00
thumb2-cmn2.ll [ARM] Materialise some boolean values to avoid a branch 2018-02-16 09:23:59 +00:00
thumb2-cmp.ll [ARM] Treat cmn immediates as legal in isLegalICmpImmediate. 2018-07-10 23:44:37 +00:00
thumb2-cpsr-liveness.ll
thumb2-eor.ll
thumb2-eor2.ll
thumb2-ifcvt1-tc.ll
thumb2-ifcvt1.ll
thumb2-ifcvt2.ll MachO: trap unreachable instructions 2018-04-13 22:25:20 +00:00
thumb2-ifcvt3.ll
thumb2-jtb.ll Generalize MergeBlockIntoPredecessor. Replace uses of MergeBasicBlockIntoOnlyPred. 2018-06-20 22:01:04 +00:00
thumb2-ldm.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
thumb2-ldr.ll
thumb2-ldr_ext.ll
thumb2-ldr_post.ll
thumb2-ldr_pre.ll [NFC][Thumb2] Autogenerate thumb2-ldr_pre.ll test 2019-05-21 21:49:05 +00:00
thumb2-ldrb.ll
thumb2-ldrd.ll
thumb2-ldrh.ll
thumb2-lsl.ll
thumb2-lsl2.ll
thumb2-lsr.ll
thumb2-lsr2.ll
thumb2-lsr3.ll
thumb2-mla.ll
thumb2-mls.ll
thumb2-mov.ll
thumb2-mul.ll
thumb2-mulhi.ll
thumb2-mvn.ll
thumb2-mvn2.ll
thumb2-neg.ll
thumb2-orn.ll
thumb2-orn2.ll
thumb2-orr.ll
thumb2-orr2.ll
thumb2-pack.ll
thumb2-rev.ll
thumb2-rev16.ll [DAGCombine] Combine pattern for REV16 2020-02-17 14:54:17 +00:00
thumb2-ror.ll
thumb2-rsb.ll
thumb2-rsb2.ll
thumb2-sbc.ll
thumb2-select.ll
thumb2-select_xform.ll [ARM] Return true in enableMultipleCopyHints(). 2018-02-16 09:51:01 +00:00
thumb2-shifter.ll
thumb2-smla.ll
thumb2-smul.ll
thumb2-spill-q.ll [Thumb] preserve test intent by removing undef 2018-05-16 22:47:42 +00:00
thumb2-str.ll
thumb2-str_post.ll
thumb2-str_pre.ll
thumb2-strb.ll
thumb2-strh.ll
thumb2-sub.ll
thumb2-sub2.ll
thumb2-sub3.ll
thumb2-sub4.ll
thumb2-sub5.ll
thumb2-sxt-uxt.ll
thumb2-sxt_rot.ll
thumb2-tbb.ll
thumb2-tbh.ll [ARM] Make InstrEmitter mark CPSR defs dead for Thumb1. 2018-10-26 19:32:24 +00:00
thumb2-teq.ll [ARM] Materialise some boolean values to avoid a branch 2018-02-16 09:23:59 +00:00
thumb2-teq2.ll [ARM] Size reduce teq to eors 2019-01-10 08:36:33 +00:00
thumb2-tst.ll [ARM] Materialise some boolean values to avoid a branch 2018-02-16 09:23:59 +00:00
thumb2-tst2.ll [ARM] Materialise some boolean values to avoid a branch 2018-02-16 09:23:59 +00:00
thumb2-uxt_rot.ll
thumb2-uxtb.ll Regenerate UXTB tests 2019-07-27 18:44:15 +00:00
tls1.ll
tls2.ll
tpsoft.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
umulo-64-legalisation-lowering.ll [SchedModel] Fix for read advance cycles with implicit pseudo operands. 2018-10-30 15:04:40 +00:00
umulo-128-legalisation-lowering.ll [ARM] Add missing memory operands to a bunch of instructions. 2019-03-25 22:42:30 +00:00
unreachable-large-offset-gep.ll CGP: Clear data structures at the end of a loop iteration instead of the beginning. 2018-10-23 21:23:18 +00:00
v8_IT_1.ll
v8_IT_2.ll
v8_IT_3.ll [Codegen] Merge tail blocks with no successors after block placement 2019-06-13 18:11:32 +00:00
v8_IT_4.ll
v8_IT_5.ll
v8_IT_6.ll
v8_deprecate_IT.ll [ARM] Comply with rules on ARMv8-A thumb mode partial deprecation of IT. 2019-06-18 20:55:09 +00:00
vqabs.ll [ARM][MVE] Select vqabs 2019-11-20 13:58:38 +00:00
vqneg.ll [ARM][MVE] Select vqneg 2019-11-25 11:29:14 +00:00