llvm-project/llvm/test/CodeGen/Thumb2
Simon Tatham 34817e04fe [ARM,MVE] Fix many signedness errors in MVE intrinsics.
Summary:
Running an end-to-end test last week I noticed that a lot of the ACLE
intrinsics that operate differently on vectors of signed and unsigned
integers were ending up generating the signed version of the
instruction unconditionally. This is because the IR intrinsics had no
way to distinguish signed from unsigned: the LLVM type system just
calls them both `v8i16` (or whatever), so you need either separate
intrinsics for signed and unsigned, or a flag parameter that tells
ISel which one to choose.

This patch fixes all the problems of that kind that I've noticed, by
adding an i32 flag parameter to many of the IR intrinsics which is set
to 1 for unsigned (matching the existing practice in cases where we
got it right), and conditioning all the isel patterns on that flag. So
the fundamental change is in `IntrinsicsARM.td`, changing the
low-level IR intrinsics API; there are knock-on changes in
`arm_mve.td` (adjusting code gen for the ACLE intrinsics to use the
modified API) and in `ARMInstrMVE.td` (adjusting isel to expect the
new unsigned flags). The rest of this patch is boringly updating tests.

Reviewers: dmgreen, miyuki, MarkMurrayARM

Reviewed By: dmgreen

Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D72270
2020-01-06 16:33:16 +00:00
..
LowOverheadLoops [DAGCombine][X86][Thumb2/LowOverheadLoops] `A - (A & C)` -> `A & (~C)` fold (PR44448) 2020-01-03 17:55:45 +03:00
mve-intrinsics [ARM,MVE] Fix many signedness errors in MVE intrinsics. 2020-01-06 16:33:16 +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
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
buildvector-crash.ll
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 [ARM] Check that CPSR does not have other uses 2019-03-17 21:36:15 +00:00
constant-islands-jump-table.ll
constant-islands-new-island-padding.ll
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 [ARM] Generate vcmp instead of vcmpe 2019-10-08 08:25:42 +00: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 [ARM] Reserve an emergency spill slot for fp16 addressing modes that need it 2019-09-17 15:23:09 +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 Describe stack-id as an enum 2019-06-17 09:13:29 +00:00
ifcvt-cbz.mir Describe stack-id as an enum 2019-06-17 09:13:29 +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 Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00: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 big endian loads/stores 2019-08-08 15:15:19 +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 [ARM] Add patterns for CTLZ on MVE 2019-09-16 15:19:49 +00:00
mve-ctpop.ll [ARM] Expand CTPOP intrinsic for MVE 2019-08-07 15:47:45 +00:00
mve-cttz.ll [ARM] Fix CTTZ not generating correct instructions MVE 2019-09-20 15:03:44 +00:00
mve-div-expand.ll [MVE] VMOVX patterns 2019-08-28 10:13:23 +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] Ignore Implicit CPSR regs when lowering from Machine to MC operands 2019-09-03 11:30:54 +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-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] Enable MVE masked loads and stores 2019-12-09 11:37:34 +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] Enable MVE masked loads and stores 2019-12-09 11:37:34 +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] Multi-vector MVE spill test 2019-11-05 16:17:25 +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] Use MQPR not QPR for MVE registers 2019-09-02 17:18:23 +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 [ARM] MVE i1 splat 2019-09-19 12:17:41 +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-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][MVE] Sink vector shift operand 2019-12-12 14:34:00 +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] Identity shuffles are legal 2019-10-02 11:40:51 +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 [ARM][THUMB2] Allow emitting T3 types of add and sub 2019-12-30 11:03:58 +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 Reapply: [ARM] Fix lsrl with a 128/256 bit shift amount or a shift of 32 2019-08-22 10:29:20 +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-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.ll [ARM] MVE interleaving load and stores. 2019-11-19 18:37:30 +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.ll [TargetLowering] SimplifyDemandedBits - call SimplifyMultipleUseDemandedBits for ISD::EXTRACT_VECTOR_ELT (REAPPLIED) 2020-01-04 13:15:50 +00:00
mve-vldst4.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +00:00
mve-vmaxv.ll [ARM] Simplify and update vmla test. NFC 2019-09-15 11:53:05 +00:00
mve-vmla.ll [ARM] Simplify and update vmla test. NFC 2019-09-15 11:53:05 +00:00
mve-vmovimm.ll [ARM] MVE vector for 64bit types 2019-07-15 18:42:54 +00:00
mve-vmovn.ll [ARM] Selection for MVE VMOVN 2019-10-14 15:19:33 +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-block.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block2.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block3.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block4.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block5.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block6.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block7.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-block8.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
mve-vpt-from-intrinsics.ll [ARM,MVE] Rename and clean up VCTP IR intrinsics. 2019-12-02 16:20:30 +00:00
mve-vpt-nots.mir [ARM][MVE] Change VPST to use, not def, VPR 2019-10-17 08:46:31 +00:00
mve-vst2.ll [ARM] MVE interleaving load and stores. 2019-11-19 18:37:30 +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.ll [ARM] Attempt to use whole register vmovs for MVE shuffles. 2019-12-08 10:53:54 +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 [ARM] Ensure we update the correct flags in the peephole optimiser 2019-02-14 11:09:24 +00:00
peephole-cmp.mir Describe stack-id as an enum 2019-06-17 09:13:29 +00:00
pic-load.ll
segmented-stacks.ll
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 [ARM] Size reduce teq to eors 2019-01-10 08:36:33 +00:00
t2sizereduction.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08: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
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