llvm-project/llvm/test/Transforms
Craig Topper bc0d656558 [RISCV] Fix mistake in RISCVTTIImpl::getIntImmCostInst.
zext.w requires Zba not Zbb. The test was also wrong, but had the
correct comment.
2022-07-14 16:42:35 -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 [AggressiveInstCombine] Update tests to use opaque pointers (NFC) 2022-06-22 12:33:06 +02:00
AlignmentFromAssumptions [AlignmentFromAssumptions] Migrate tests to opaque pointers (NFC) 2022-06-22 13:57:47 +02:00
ArgumentPromotion [ArgPromotion] Unify byval promotion with non-byval 2022-06-28 15:19:58 +03:00
AtomicExpand [LoongArch] Add codegen support for atomic fence, atomic load and atomic store 2022-07-13 15:25:45 +08:00
Attributor Revert "[Attributor] Replace AAValueSimplify with AAPotentialValues" 2022-07-08 00:53:38 -05:00
BDCE
BlockExtractor [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
BranchFolding
CallSiteSplitting [CallSiteSplitting] Regenerate test checks (NFC) 2022-07-08 09:24:11 +02:00
CalledValuePropagation
CanonicalizeAliases
CanonicalizeFreezeInLoops
CodeExtractor [ArgPromotion] Remove legacy PM support 2022-06-27 09:42:17 +02:00
CodeGenPrepare [CGP] Also freeze ctlz/cttz operand when despeculating 2022-06-10 09:46:10 +02:00
ConstantHoisting [RISCV] Fix mistake in RISCVTTIImpl::getIntImmCostInst. 2022-07-14 16:42:35 -07:00
ConstantMerge [test] Use -passes syntax when specifying pipeline in some more tests 2021-11-27 09:52:55 +01:00
ConstraintElimination Recommit "[ConstraintElimination] Transfer info from ULT to signed system." 2022-06-24 09:27:14 +02:00
Coroutines [coroutine] add nomerge function attribute to `llvm.coro.save` 2022-07-12 10:39:38 -07:00
CorrelatedValuePropagation [CVP] Add coverage for missing mul/shl nowrap variants 2022-07-14 13:00:55 -07:00
CrossDSOCFI
DCE [DCE] Update tests to use opaque pointers (NFC) 2022-06-10 17:31:35 +02:00
DFAJumpThreading [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00
DeadArgElim [llvm] Add DW_CC_nocall to function debug metadata when either return values or arguments are removed 2022-06-15 03:30:15 +05:30
DeadStoreElimination [DSE] Don't remove nounwind invokes 2022-06-21 11:54:09 -07:00
DivRemPairs [Mips] Implement hasDivRemOp() 2022-05-16 14:45:40 +08:00
EarlyCSE [Tests] Remove unnecessary bitcasts from opaque pointer tests (NFC) 2022-06-22 14:15:46 +02:00
EliminateAvailableExternally
EntryExitInstrumenter
ExpandMemCmp [ExpandMemCmp] Properly expand `bcmp` to an equality pattern. 2022-04-15 11:26:24 +02:00
FixIrreducible LowerSwitch: Avoid inserting NewDefault block 2022-04-14 13:30:56 +08:00
Float2Int [Float2Int] Make sure dependent ranges are calculated first (PR54669) 2022-04-04 10:18:39 +02:00
ForcedFunctionAttrs
FunctionAttrs [RPOFuncAttrs] Fix norecurse detection 2022-06-18 12:20:10 -07:00
FunctionImport [Metadata] Utilize the resizing capability of MDNodes in Moduleflag processing. 2022-07-06 10:18:33 -07:00
FunctionSpecialization [SCCP] Don't mark edges feasible when resolving undefs 2022-06-22 10:28:27 +02:00
GCOVProfiling [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
GVN [BasicBlockUtils] Allow critical edge splitting with callbr terminators 2022-07-08 09:20:44 +02:00
GVNHoist [GVNHoist] drop debug location according to the debug info guide 2022-03-30 20:17:53 -07:00
GVNSink Revert "[SimplifyCFG] Thread branches on same condition in more cases (PR54980)" 2022-07-05 16:57:46 +02:00
GlobalDCE [GlobalDCE] [VFE] Avoid dropping vfunc dependencies when an invalid vtable entry is present 2022-02-17 19:41:46 -08:00
GlobalMerge Fix the eh-filter.ll test. 2022-06-29 16:14:41 -05:00
GlobalOpt [GlobalOpt] Add more tests with large number of stores to globals. 2022-07-13 11:13:21 -07:00
GlobalSplit
GuardWidening [GuardWidening] Add tests showing incorrect behavior of GW. 2022-06-29 13:41:59 +07:00
HardwareLoops [ARM] Update test comments after D114018. NFC 2021-11-16 22:48:45 +00:00
HelloNew
HotColdSplit [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
IRCE [SCEV] Fix isImpliedViaMerge() with values from previous iteration (PR56242) 2022-07-05 15:31:23 +02:00
IROutliner [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
IndVarSimplify [SCEVExpander] Make CanonicalMode handing in isSafeToExpand() more robust (PR50506) 2022-07-14 14:41:51 +02:00
IndirectBrExpand
InferAddressSpaces [InferAddressSpaces] Check if AS are the same in isNoopPtrIntCastPair 2022-04-28 11:10:55 +08:00
InferFunctionAttrs BuildLibCalls: infer allockind attributes on relevant functions 2022-05-31 10:01:17 -04:00
Inline [X86] initial -mfunction-return=thunk-extern support 2022-07-12 09:17:54 -07:00
InstCombine [InstCombine] add/edit tests for masked sub from constant; NFC 2022-07-14 14:23:00 -04:00
InstMerge Reland "[LICM] Hoist LOAD without sinking the STORE" 2021-12-02 03:53:50 -08:00
InstNamer
InstSimplify [VP] Add test to show optimization opportunities 2022-07-14 12:36:46 +02:00
InterleavedAccess [IR] Move vector.insert/vector.extract out of experimental namespace 2022-06-27 10:48:45 +00:00
Internalize
JumpThreading [JumpThreading] Avoid threadThroughTwoBasicBlocks when PredPred BB ends with indirectbranch 2022-07-08 09:29:17 +02:00
LCSSA
LICM [AArch64][NFC] Prepare test cases (for D128302) to show more accurate cost estimation of extract-element could generate better assembly code. 2022-07-07 09:39:29 -07:00
LoadStoreVectorizer [AMDGPU][FIX] Proper load-store-vectorizer result with opaque pointers 2022-04-15 13:42:46 -05:00
LoopBoundSplit
LoopDataPrefetch
LoopDeletion [IndVars] Simplify instructions after replacing header phi with preheader value 2022-07-13 10:27:04 +02:00
LoopDistribute Autogen a couple of predicated SCEV tests 2022-02-11 13:56:35 -08:00
LoopFlatten [LoopFlatten] Fix crash if the inner loop trip count comes from a sext instruction. 2022-06-07 08:21:21 -07:00
LoopFusion [NFCI] Fixed missing colon in CHECK directives 2022-04-03 11:52:38 +02:00
LoopIdiom [LoopIdiom] Fix bailout for aliasing in memcpy transform. 2022-05-31 17:24:23 -07:00
LoopInstSimplify [LoopInstSimplify] Ignore users in unreachable blocks. PR55072 2022-04-25 17:35:28 +07:00
LoopInterchange [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
LoopLoadElim [NFC][LAA] Match-up type sizes for possible extensions, based on actual bit-size rather than rounded-up byte size. 2022-04-22 23:16:20 -07:00
LoopPredication [SCEVExpander] Drop poison generating flags when reusing instructions 2021-11-29 15:23:34 -08:00
LoopReroll
LoopRotate Pipe potentially invalid InstructionCost through CodeMetrics 2022-06-09 15:17:24 -07:00
LoopSimplify [BasicBlockUtils] Do not move loop metadata if outer loop header. 2022-05-23 16:39:54 -07:00
LoopSimplifyCFG [LoopSimplifyCFG] use poison when replacing dead instructions instead of undef [NFC] 2022-06-26 14:15:55 +01:00
LoopStrengthReduce [RISCV][LSR] Add coverage for ICmpZero with scaled vscale values 2022-07-14 10:55:31 -07:00
LoopTransformWarning
LoopUnroll [LoopUnrollRuntime] Invalidate SCEV for exit phi in ConnectProlog. 2022-06-29 20:28:43 +01:00
LoopUnrollAndJam [LoopUnroll] Disable loop unroll when user explicitly asks for unroll-and-jam 2021-12-15 15:58:05 +00:00
LoopVectorize [LoopVectorize] Ensure the VPReductionRecipe is placed after all it's inputs 2022-07-13 09:29:25 +01:00
LoopVersioning [IRBuilder] Migrate and-folding to value-based FoldAnd. 2022-01-20 10:22:21 +00:00
LoopVersioningLICM
LowerAtomic [LLVM] Add the support for fmax and fmin in atomicrmw instruction 2022-07-06 10:57:53 -04:00
LowerConstantIntrinsics [builtin_object_size] Basic support for posix_memalign 2022-04-08 09:31:11 +02:00
LowerExpectIntrinsic
LowerGlobalDestructors Reland "Lower `@llvm.global_dtors` using `__cxa_atexit` on MachO" 2022-03-23 18:36:55 -07:00
LowerGuardIntrinsic
LowerInvoke
LowerMatrixIntrinsics [LowerMatrixMultiplication] Switch dummy values from undef to poison [NFC] 2022-07-03 12:32:19 +01:00
LowerSwitch LowerSwitch: Avoid inserting NewDefault block 2022-04-14 13:30:56 +08:00
LowerTypeTests [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
LowerWidenableCondition
MakeGuardsExplicit
Mem2Reg [Mem2Reg] Consistently preserve nonnull assume for uninit load 2022-07-12 12:53:08 +02:00
MemCpyOpt [MemCpyOpt] Work around PR54682 2022-04-04 10:19:51 +02:00
MergeFunc [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00
MergeICmps Reapply [MergeICmps] Don't require GEP 2022-03-04 11:39:11 +01:00
MetaRenamer [TLI] Check that malloc argument has type size_t 2022-03-14 17:22:24 +01:00
NameAnonGlobals
NaryReassociate
NewGVN [NewGVN] add context instruction for SimplifyQuery 2022-06-22 12:25:24 +08:00
ObjCARC Reapply "[Intrinsics] Add `nocallback` to the default intrinsic attributes" 2022-03-25 09:36:50 -05:00
OpenMP Revert "[Attributor] Replace AAValueSimplify with AAPotentialValues" 2022-07-08 00:53:38 -05:00
PGOProfile [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
PartialInlining
PartiallyInlineLibCalls [PartiallyInlineLibCalls] Don't partially inline a musttail libcall. 2022-04-05 22:30:50 +03:00
PhaseOrdering [PhaseOrdering][SystemZ] add test for combining/unrolling; NFC 2022-07-14 14:23:01 -04:00
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate [Reassociate] Cleanup minor missed optimizations 2022-07-14 08:21:04 -07:00
Reg2Mem
RelLookupTableConverter/X86 [RelLookupTableConverter] Ensure that GV, GEP and load types match 2022-02-17 12:05:05 +01:00
RewriteStatepointsForGC [RS4GC] Handle freeze case for vector 2022-06-23 11:58:41 +07:00
SCCP [SCCP] Don't check for UndefValue before calling markConstant() 2022-07-14 10:05:56 +02:00
SLPVectorizer [SLP] add test for load combining + shuffling; NFC 2022-07-04 10:55:07 -04:00
SROA [Tests] Remove unnecessary bitcasts from opaque pointer tests (NFC) 2022-06-22 14:15:46 +02:00
SafeStack [safestack] Support safestack in stack size diagnostics 2022-04-20 18:29:40 +00:00
SampleProfile [SampleProfile][Inline] Annotate sample profile inline remarks with link phase (prelink/postlink) information. 2022-06-22 17:00:53 -07:00
ScalarizeMaskedMemIntrin
Scalarizer [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-06-30 21:47:31 +01:00
SeparateConstOffsetFromGEP [test][RISCV] Precommit test for SeparateConstOffsetFromGEP (NFC) 2022-06-15 16:03:30 +03:00
SimpleLoopUnswitch [SimpleLoopUnswitch] Always skip trivial select and set condition. 2022-05-26 09:46:24 +01:00
SimplifyCFG [SimplifyCFG] Improve SwitchToLookupTable optimization 2022-07-13 23:21:45 +00:00
Sink [Sink] Don't sink non-willreturn calls (PR51188) 2022-04-07 16:35:05 +02:00
SpeculativeExecution
StraightLineStrengthReduce [CodeGen] Remove unneeded regex escaping in FileCheck patterns. NFC. 2022-02-18 16:10:56 +00:00
StripDeadPrototypes
StripSymbols
StructurizeCFG Revert "[StructurizeCFG] Improve basic block ordering" 2022-07-14 09:40:51 -05:00
SyntheticCountsPropagation
TailCallElim [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00
ThinLTOBitcodeWriter [ThinLTO][MC] Use conditional assignments for promotion aliases 2021-12-10 12:21:37 -08:00
TypePromotion [TypePromotion] Avoid unnecessary trunc zext pairs 2022-05-24 15:34:36 +01:00
UnifyFunctionExitNodes
UnifyLoopExits Revert "[UnifyLoopExits] Reduce number of guard blocks" 2022-07-14 10:33:52 -05:00
Util [Debugify] Port verify-debuginfo-preserve to NewPM 2022-07-06 17:07:20 +02:00
VectorCombine [VectorCombine] Avoid creating shuffle for extract-extract pattern on scalable vector. 2022-07-07 08:37:04 +00:00
WholeProgramDevirt [NFC] Switch a few uses of undef to poison as placeholders for unreachble code 2022-07-03 14:34:03 +01:00