llvm-project/llvm/test/Transforms
Craig Topper 90b695d1f2 [IR][InstCombine] Support scalable vector splats ConstantExprs in Constant::getUniqueInteger().
I've left the getAggregateElement as a fast path for non-ConstantExprs
to avoid a call to getSplatValue in release builds.

Fixes PR57989.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D134670
2022-09-26 14:55:15 -07:00
..
ADCE [ADCE] Update tests to use opaque pointers (NFC) 2022-06-22 12:26:12 +02:00
AddDiscriminators [AddDiscriminators] Migrate tests to opaque pointers (NFC) 2022-06-22 12:47:12 +02:00
AggressiveInstCombine Revert "[AggressiveInstCombine] Combine consecutive loads which are being merged to form a wider load." 2022-09-23 19:21:09 +02:00
AlignmentFromAssumptions [AlignmentFromAssumptions] Migrate tests to opaque pointers (NFC) 2022-06-22 13:57:47 +02:00
ArgumentPromotion [ArgPromotion] Transfer metadata nontemporal to promoted loads 2022-07-26 16:30:08 +08:00
AtomicExpand AMDGPU: Improve atomicrmw fadd selection 2022-09-23 17:52:10 +02:00
Attributor [Attribute] Clean up test prefixes (NFC) 2022-09-23 11:08:11 +02:00
BDCE
BlockExtractor
BranchFolding
CallSiteSplitting [IR] Don't use blockaddresses as callbr arguments 2022-07-15 10:18:17 +02:00
CalledValuePropagation
CanonicalizeAliases [LegacyPM] Remove LTO passes from optimization pipeline 2022-07-17 14:24:36 -07:00
CanonicalizeFreezeInLoops
CodeExtractor [IR] Don't use blockaddresses as callbr arguments 2022-07-15 10:18:17 +02:00
CodeGenPrepare [CGP] Update failing test missed in 81a11da762. 2022-09-15 19:35:25 +01:00
ConstantHoisting [RISCV] Disable constant hoisting for multiply by negated power of 2. 2022-07-27 09:37:59 -07:00
ConstantMerge
ConstraintElimination [ConstraintElimination] Add initial usub.with.overflow tests. 2022-09-26 16:44:36 +01:00
Coroutines [Coroutines] Regenerate coro-retcon-resume-values.ll 2022-09-25 19:58:18 +01:00
CorrelatedValuePropagation [DebugInfo] Missing debug location after replacement in processSRem function 2022-09-01 13:18:17 +01:00
CrossDSOCFI
DCE
DFAJumpThreading [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00
DeadArgElim [Globals] Treat nobuiltin fns as maybe-derefined. 2022-08-23 13:45:10 +01:00
DeadStoreElimination [DSE] Add value type info checks for masked store candidates in Dead Store Elimination. 2022-09-20 15:54:25 -07:00
DivRemPairs
EarlyCSE [EarlyCSE][ConstantFolding] do not constant fold atan2(+/-0.0, +/-0.0), part 2 2022-08-20 10:16:06 -04:00
EliminateAvailableExternally
EntryExitInstrumenter
ExpandMemCmp
FixIrreducible
Float2Int
ForcedFunctionAttrs
FunctionAttrs [FunctionAttrs] Add tests for inaccessiblememonly (NFC) 2022-09-23 14:45:36 +02:00
FunctionImport [test] Change -function-import tests to use -passes= 2022-07-17 21:43:00 -07:00
FunctionSpecialization [SCCP] Don't mark edges feasible when resolving undefs 2022-06-22 10:28:27 +02:00
GCOVProfiling [InstrProf] Add the skipprofile attribute 2022-08-04 08:45:27 -07:00
GVN [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
GVNHoist
GVNSink Revert "[SimplifyCFG] Thread branches on same condition in more cases (PR54980)" 2022-07-05 16:57:46 +02:00
GlobalDCE
GlobalMerge Fix the eh-filter.ll test. 2022-06-29 16:14:41 -05:00
GlobalOpt add test for -enable-global-analyses=0 [NFC] 2022-09-19 19:25:14 +01:00
GlobalSplit
GuardWidening [GuardWidening] Add tests showing incorrect behavior of GW. 2022-06-29 13:41:59 +07:00
HardwareLoops
HelloNew
HotColdSplit
IRCE [IRCE] Bail in case of pointer types. PR40539 2022-09-12 16:01:25 +07:00
IROutliner [IR] Don't use blockaddresses as callbr arguments 2022-07-15 10:18:17 +02:00
IndVarSimplify [SCEVExpander] Recompute poison-generating flags on hoisting. PR57187 2022-09-13 12:56:35 +07:00
IndirectBrExpand
InferAddressSpaces [NFC] Fix tests in commit 20cf170e68 2022-09-15 15:37:58 -07:00
InferFunctionAttrs [InstCombine] Tighten up known library function signature tests (PR #56463) 2022-08-10 14:15:46 -06:00
Inline [AArch64][SME] Disable inlining when SME attributes require smstart/smstop or lazy-save. 2022-09-21 09:35:47 +01:00
InstCombine [IR][InstCombine] Support scalable vector splats ConstantExprs in Constant::getUniqueInteger(). 2022-09-26 14:55:15 -07:00
InstMerge
InstNamer
InstSimplify [InstSimplify] don't commute constant expression operand in min/max calls 2022-09-26 16:01:09 -04:00
InterleavedAccess [IR] Move vector.insert/vector.extract out of experimental namespace 2022-06-27 10:48:45 +00:00
Internalize [Internalize] Support glob patterns for API lists 2022-07-22 08:24:32 -04:00
JumpThreading [JumpThreading] Process range comparisions with non-local cmp instructions 2022-09-02 12:22:45 +02:00
LCSSA [LCSSA] Update unreachable uses with poison. 2022-09-04 22:26:18 +01:00
LICM [LICM] Add test for PR57780 (NFC) 2022-09-20 13:07:11 +02:00
LoadStoreVectorizer
LoopBoundSplit
LoopDataPrefetch [LoopDataPrefetch] Fix crash when TTI doesn't set CacheLineSize 2022-07-26 13:08:42 +08:00
LoopDeletion [LoopDeletion] Regenerate check lines for test added in f076a70979. 2022-09-26 22:11:32 +01:00
LoopDistribute [LoopDistribute] Add LAA invalidation test for #50940. 2022-09-26 12:21:14 +01:00
LoopFlatten [Test] Regenerate tests using update_tests.py 2022-08-19 14:51:19 +07:00
LoopFusion [LoopFuse] Drop loop dispositions before reassigning blocks to other loop 2022-09-19 17:43:06 +07:00
LoopIdiom [LoopIdiom] Add non-LZCNT target test coverage 2022-09-19 18:13:11 +01:00
LoopInstSimplify
LoopInterchange [LoopInterchange][PR57148] Ensure the correct form of IR after transformation 2022-09-22 00:20:53 -04:00
LoopLoadElim [LoopVersioning] Add tests where versioning requires LAA invalidation. 2022-09-24 20:33:49 +01:00
LoopPredication Loop names used in reporting can grow very large 2022-09-09 13:45:14 -04:00
LoopReroll
LoopRotate [LoopRotate] Drop loop dispositions when rotating loops. PR56260 2022-09-19 18:01:02 +07:00
LoopSimplify [BasicBlockUtils] Amend test for loop metadata. 2022-08-30 09:29:52 -07:00
LoopSimplifyCFG [LoopSimplifyCFG] Prevent use-def dominance breach by handling dead exits. PR56243 2022-07-19 15:54:12 +07:00
LoopStrengthReduce [LSR] Fold terminating condition to other IV when possible 2022-09-20 01:38:47 -07:00
LoopTransformWarning
LoopUnroll [LoopUnroll] Add cache verification failure test case. 2022-09-26 14:25:37 +01:00
LoopUnrollAndJam
LoopVectorize [LV] Update handling of scalable pointer inductions after b73d2c8. 2022-09-23 18:23:02 +01:00
LoopVersioning [LoopVersioning] Add tests where versioning requires LAA invalidation. 2022-09-24 20:33:49 +01:00
LoopVersioningLICM [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
LowerAtomic [NFC] Switch a few uses of undef to poison as placeholders for unreachable code 2022-07-23 21:50:11 +01:00
LowerConstantIntrinsics tests: add attributes that would normally come from inferattrs 2022-07-25 17:29:00 -04:00
LowerExpectIntrinsic
LowerGlobalDestructors
LowerGuardIntrinsic
LowerInvoke
LowerMatrixIntrinsics [Matrix] Add tests for addition transpose optimizations 2022-09-26 13:27:03 -07:00
LowerSwitch
LowerTypeTests [test] Change -lowertypetests tests to -passes= 2022-07-17 15:03:46 -07:00
LowerWidenableCondition
MakeGuardsExplicit
Mem2Reg [Mem2Reg] Consistently preserve nonnull assume for uninit load 2022-07-12 12:53:08 +02:00
MemCpyOpt [DSE] Support looking through memory phis at end of function. 2022-08-30 13:27:51 +01:00
MergeFunc [llvm] Handle dso_local_equivalent in FunctionComparator 2022-09-22 18:42:31 +00:00
MergeICmps
MetaRenamer
NameAnonGlobals [LegacyPM] Remove LTO passes from optimization pipeline 2022-07-17 14:24:36 -07:00
NaryReassociate
NewGVN [NewGVN][PHIOFOPS] Bail out if an operand is in OpSafeForPHIOfOps but it is not safe for the current basic block. 2022-08-17 18:57:46 -07:00
ObjCARC [Intrinsics] Add `nocallback` to the memset/cpy/move intrinsics 2022-07-21 22:52:46 -05:00
OpenMP [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
PGOProfile Restore "[MemProf] Memprof profile matching and annotation" 2022-09-23 11:38:47 -07:00
PartialInlining
PartiallyInlineLibCalls
PhaseOrdering [PhaseOrdering][X86] Add missing triple from fast-basictest.ll test 2022-09-25 16:23:35 +01:00
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate [InstCombine] try to fold mul by neg-power-of-2 to shl 2022-09-21 15:09:39 -04:00
Reg2Mem
RelLookupTableConverter/X86 [RelLookupTableConverter] Bail on invalid pointer size (x32) 2022-08-09 09:36:39 +02:00
RewriteStatepointsForGC [RS4GC] Handle vectors of pointers in non-live clobbering 2022-08-16 17:47:30 +03:00
SCCP [SCCP] convert ashr to lshr for non-negative shift value 2022-09-15 13:54:52 -04:00
SLPVectorizer [SLP][X86] Add missing triple from pr49081.ll test 2022-09-25 16:22:42 +01:00
SROA Revert "[SROA] Create additional vector type candidates based on store and load slices" 2022-09-23 12:24:07 -07:00
SafeStack
SampleProfile [llvm][misexpect] Re-enable MisExpect for SampleProfiling 2022-08-26 20:24:10 +00:00
ScalarizeMaskedMemIntrin
Scalarizer [NFC][Scalarizer] Let testcase be auto-generated from update_test_check 2022-09-21 02:05:09 -07:00
SeparateConstOffsetFromGEP [AArch64] Move SeparateConstOffsetFromGEPPass before LSR and enable EnableGEPOpt by default. 2022-07-22 15:20:53 +01:00
SimpleLoopUnswitch Loop names used in reporting can grow very large 2022-09-09 13:45:14 -04:00
SimplifyCFG [NFC] Use opaqueptr in llvm/test/Transforms/SimplifyCFG/preserve-llvm-loop-metadata.ll 2022-09-19 09:01:11 -07:00
Sink
SpeculativeExecution
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols [StripDeadDebugInfo] Drop dead CUs 2022-09-11 01:31:03 -07:00
StructurizeCFG StructurizeCFG: Set Undef for non-predecessors in setPhiValues() 2022-09-26 09:54:47 +08:00
SyntheticCountsPropagation
TailCallElim KCFI sanitizer 2022-08-24 22:41:38 +00:00
ThinLTOBitcodeWriter
TypePromotion [NFC][TypePromotion] Add test 2022-09-05 09:01:23 +01:00
UnifyFunctionExitNodes [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
UnifyLoopExits [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
Util [NFC][1/n] Remove -enable-new-pm=0 flags from lit tests 2022-09-19 09:57:37 -07:00
VectorCombine [VectorCombine] Only consider shuffle uses with the same type. 2022-07-16 13:23:39 +01:00
WholeProgramDevirt [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00