llvm-project/llvm/test/Transforms
Nikita Popov e3cec17b2d [InstSimplify] Remove incorrect icmp of gep fold (PR52429)
As described in https://bugs.llvm.org/show_bug.cgi?id=52429 this
fold is incorrect, because inbounds only guarantees that the
pointers don't wrap in the unsigned space: It is possible that
the sign boundary is crossed by an object.

I'm dropping the fold entirely rather than adjusting it, because
computePointerICmp() fully subsumes it (just with correct predicate
handling).

Differential Revision: https://reviews.llvm.org/D113343
2021-11-06 21:03:21 +01:00
..
ADCE [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
AddDiscriminators [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
AggressiveInstCombine [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
AlignmentFromAssumptions [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
ArgumentPromotion [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
AtomicExpand [PowerPC] Add lit.local.cfg in AtomicExpand tests 2021-07-20 09:13:50 +00:00
Attributor [LazyCallGraph] Skip blockaddresses 2021-11-01 13:10:24 -07:00
BDCE [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
BlockExtractor
BranchFolding
CallSiteSplitting
CalledValuePropagation [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
CanonicalizeAliases
CanonicalizeFreezeInLoops [AArch64] Make -mcpu=generic schedule for an in-order core 2021-10-09 15:58:31 +01:00
CodeExtractor [CodeExtractor] Preserve topological order for the return blocks. 2021-08-25 08:09:01 -07:00
CodeGenPrepare Revert "[AArch64] Optimize add/sub with immediate" 2021-11-03 14:15:21 +08:00
ConstantHoisting [RISCV] Add zext.h/zext.w to RISCVTTIImpl::getIntImmCostInst. 2021-08-18 09:40:40 -07:00
ConstantMerge
ConstraintElimination [ConstraintElimination] Rewrite tests to reduce verification complexity. 2021-08-26 16:41:40 +01:00
Coroutines Coroutines: don't infer function attrs before lowering 2021-11-04 10:24:28 +00:00
CorrelatedValuePropagation [CVP] Canonicalize signed relational comparisons of scalar integers to unsigned comparison predicates 2021-11-01 12:16:05 +03:00
CrossDSOCFI
DCE [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
DFAJumpThreading Add jump-threading optimization for deterministic finite automata 2021-07-27 14:34:04 -04:00
DeadArgElim [ObjC][ARC] Use the addresses of the ARC runtime functions instead of 2021-09-08 11:58:03 -07:00
DeadStoreElimination [DSE] Support redundant stores eliminated by memset. 2021-10-29 22:19:53 +01:00
DivRemPairs [DivRemPairs] make sure we have a valid CFG for hoisting division 2021-07-28 11:09:12 -04:00
EarlyCSE [NewPM] Use parameterized syntax for a couple of more passes 2021-08-20 14:59:21 +02:00
EliminateAvailableExternally
EntryExitInstrumenter [NewPM] Use parameterized syntax for a couple of more passes 2021-08-20 14:59:21 +02:00
ExpandMemCmp [x86] split memcmp tests for 32/64-bit targets; NFC 2021-08-15 13:51:18 -04:00
FixIrreducible
Float2Int [NewPM][test] Strickly use -passes in some more lit tests 2021-10-20 17:06:47 +02:00
ForcedFunctionAttrs
FunctionAttrs Coroutines: don't infer function attrs before lowering 2021-11-04 10:24:28 +00:00
FunctionImport
FunctionSpecialization [FuncSpec] Don't run the solver if there's nothing to do 2021-10-13 19:05:19 +01:00
GCOVProfiling [GCov] Emit memset instead of stores in __llvm_gcov_reset 2021-08-05 22:40:15 -07:00
GVN [Test] Fix tests showing generation of already existent PHIs by GVN 2021-11-02 21:57:37 +07:00
GVNHoist PR46874: Reset stack after visiting a node 2021-08-20 11:25:05 -07:00
GVNSink
GlobalDCE [Verifier] Add verification logic for GlobalIFuncs 2021-10-31 20:00:57 -07:00
GlobalMerge
GlobalOpt [opt] Directly translate -O# to -passes='default<O#>' 2021-10-18 16:48:10 -07:00
GlobalSplit
GuardWidening [test] Remove -loop-guard-widening legacy PM tests 2021-09-05 11:36:21 -07:00
HardwareLoops [HardwareLoops] Loop guard intrinsic to recognise zext 2021-09-16 08:33:16 +01:00
HelloNew
HotColdSplit [CodeExtractor] Preserve topological order for the return blocks. 2021-08-25 08:09:01 -07:00
IRCE Autogen tests for ease of future update 2021-11-05 12:46:07 -07:00
IROutliner [IROutliner] Adding supports for multiple exits 2021-09-08 08:58:07 -07:00
IndVarSimplify [SCEV] Use constant range of RHS to prove NUW on narrow IV in trip count logic 2021-11-05 15:36:47 -07:00
IndirectBrExpand
InferAddressSpaces [Tests] Fix incorrect noalias metadata 2021-09-18 20:51:00 +02:00
InferFunctionAttrs Replace "CHECK-NOT: #{{.*}}" with same-line positive checks. NFC. 2021-08-05 21:55:23 -07:00
Inline [InlineAdvisor] Add fallback/format switches and negative remark processing to Replay Inliner 2021-10-29 12:32:03 -07:00
InstCombine [InstSimplify] Remove incorrect icmp of gep fold (PR52429) 2021-11-06 21:03:21 +01:00
InstMerge
InstNamer
InstSimplify [InstSimplify] Remove incorrect icmp of gep fold (PR52429) 2021-11-06 21:03:21 +01:00
InterleavedAccess [AArch64][SVE] Generate SVE >1 element structured load/stores from fixed types 2021-10-29 09:35:57 +00:00
Internalize [IR] Rename `comdat noduplicates` to `comdat nodeduplicate` 2021-07-20 12:47:10 -07:00
JumpThreading [test] autogen a couple of additional tests 2021-10-05 18:58:08 -07:00
LCSSA
LICM [NewPM][test] Avoid using -enable-new-pm=1 since -passes implies new PM 2021-10-20 15:16:17 +02:00
LoadStoreVectorizer [LSV] Change the default value of InstertElement to poison 2021-10-03 17:57:34 +09:00
LoopBoundSplit [LoopBoundSplit] Handle the case in which exiting block is loop header 2021-10-08 09:13:41 +01:00
LoopDataPrefetch [LoopDataPrefetch] Add missed LoopSimplify dependence for prefetch pass 2021-08-26 21:01:59 +08:00
LoopDeletion [LoopDeletion] Support selects when symbolically evaluating 1st iteration 2021-10-09 14:47:44 +07:00
LoopDistribute Revert rest of `IRBuilderBase`'s short-circuiting folds 2021-10-28 02:15:14 +03:00
LoopFlatten [LoopFlatten] Bail if we can't perform flattening after IV widening 2021-09-29 19:53:34 +01:00
LoopFusion
LoopIdiom Revert rest of `IRBuilderBase`'s short-circuiting folds 2021-10-28 02:15:14 +03:00
LoopInstSimplify
LoopInterchange [LoopInterchange] Check lcssa phis in the inner latch in scenarios of multi-level nested loops 2021-07-16 11:59:20 -04:00
LoopLoadElim
LoopPredication Revert rest of `IRBuilderBase`'s short-circuiting folds 2021-10-28 02:15:14 +03:00
LoopReroll [SCEV] Fix unsound reasoning in howManyLessThans 2021-07-15 10:32:47 -07:00
LoopRotate [LoopRotate] Forget SCEV values in RewriteUsesOfClonedInstructions 2021-10-07 19:36:30 +02:00
LoopSimplify [test] Fixup tests with -analyze in llvm/test/Transforms 2021-09-04 16:45:51 -07:00
LoopSimplifyCFG [Tests] Remove explicit -enable-mssa-loop-dependency options (NFC) 2021-08-14 21:21:07 +02:00
LoopStrengthReduce [ARM] Simplify address calculation for NEON load/store 2021-10-14 15:23:10 +03:00
LoopTransformWarning
LoopUnroll [LoopPeel] Peel loops with exits followed by an unreachable or deopt block 2021-11-02 23:12:04 +07:00
LoopUnrollAndJam
LoopUnswitch [Test] Regenerate checks using auto-update script 2021-10-28 15:13:43 +07:00
LoopVectorize [NFC][LoopVectorize] Add test for tail-folding loop with conditional uniform load 2021-11-03 09:51:11 +00:00
LoopVersioning Revert rest of `IRBuilderBase`'s short-circuiting folds 2021-10-28 02:15:14 +03:00
LoopVersioningLICM [opt] Directly translate -O# to -passes='default<O#>' 2021-10-18 16:48:10 -07:00
LowerAtomic
LowerConstantIntrinsics [LowerConstantIntrinsics] Fix heap-use-after-free bug in worklist 2021-09-21 11:33:07 +02:00
LowerExpectIntrinsic
LowerGuardIntrinsic
LowerInvoke
LowerMatrixIntrinsics [Tests] Fix incorrect noalias metadata 2021-09-18 20:51:00 +02:00
LowerSwitch
LowerTypeTests Revert rest of `IRBuilderBase`'s short-circuiting folds 2021-10-28 02:15:14 +03:00
LowerWidenableCondition
MakeGuardsExplicit
Mem2Reg [NewPM][test] Use -passes syntax in Mem2Reg lit tests 2021-10-20 17:06:47 +02:00
MemCpyOpt [OpaquePtr] Forbid mixing typed and opaque pointers 2021-09-10 15:18:23 +02:00
MergeFunc [opt] Directly translate -O# to -passes='default<O#>' 2021-10-18 16:48:10 -07:00
MergeICmps [MergeICmps] Don't reorder unmerged comparisons 2021-09-21 21:22:12 +02:00
MetaRenamer [NewPM][test] Strickly use -passes in some more lit tests 2021-10-20 17:06:47 +02:00
NameAnonGlobals
NaryReassociate [NARY-REASSOCIATE] Fix infinite recursion optimizing min\max 2021-10-20 14:23:03 +07:00
NewGVN [MemorySSA] Support invariant.group metadata 2021-09-08 13:06:12 -07:00
ObjCARC [ObjC][ARC] Use the addresses of the ARC runtime functions instead of 2021-09-08 11:58:03 -07:00
OpenMP [OpenMP][FIX] Do not signal SPMD-mode but then keep generic-mode 2021-11-02 23:22:04 -05:00
PGOProfile [InstrProfiling] Keep profd non-private for non-renamable comdat functions 2021-08-24 20:14:03 -07:00
PartialInlining
PartiallyInlineLibCalls
PhaseOrdering [PassManager] `buildModuleOptimizationPipeline()`: schedule `LoopDeletion` pass run before vectorization passes 2021-11-03 19:24:49 +03:00
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
Reassociate
Reg2Mem [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00
RelLookupTableConverter/X86
RewriteStatepointsForGC [LLVM] Inclusive terms: remove/replace references to sanity in RewriteStatepointsForGC.cpp and test 2021-10-25 16:17:41 -04:00
SCCP [SCCP] Properly report changes when changing a pointer argument 2021-10-11 13:12:08 -07:00
SLPVectorizer [Test][SLPVectorizer] Precommit test for PR52275 2021-11-06 17:11:02 +03:00
SROA [IR] Add helper to convert offset to GEP indices 2021-09-20 20:18:16 +02:00
SafeStack
SampleProfile [SamplePGO] Fix callsite sample lookup to use dwarf names when dwarf linkage name isn't available. 2021-11-01 21:24:33 -07:00
ScalarizeMaskedMemIntrin
Scalarizer [Scalarizer] Do not insert instructions between PHI nodes and debug intrinsics. 2021-11-02 09:53:59 -04:00
SeparateConstOffsetFromGEP SeparateConstOffsetFromGEP: Fix stack overflow in unreachable code 2021-09-14 19:49:38 -04:00
SimpleLoopUnswitch [SimpleLoopUnswitch] Re-fix introduction of UB when hoisted condition may be undef or poison 2021-10-12 01:02:09 +09:00
SimplifyCFG [Test] Regenerate checks using auto-update script 2021-10-28 15:13:43 +07:00
Sink
SpeculativeExecution [NewPM][test] Use -passes syntax in SpeculativeExecution lit tests 2021-10-20 15:16:17 +02:00
StraightLineStrengthReduce
StripDeadPrototypes [NewPM][test] Strickly use -passes in some more lit tests 2021-10-20 17:06:47 +02:00
StripSymbols [NewPM][test] Strickly use -passes in some more lit tests 2021-10-20 17:06:47 +02:00
StructurizeCFG
SyntheticCountsPropagation
TailCallElim [ObjC][ARC] Use the addresses of the ARC runtime functions instead of 2021-09-08 11:58:03 -07:00
ThinLTOBitcodeWriter ThinLTO: Fix inline assembly references to static functions with CFI 2021-08-03 11:35:30 -07:00
TypePromotion/ARM [ARM][TypePromotion] Re-generate test checks. NFC 2021-08-16 13:42:42 -07:00
UnifyFunctionExitNodes
UnifyLoopExits
Util Improve the effectiveness of BDCE's debug info salvaging 2021-09-30 09:28:49 -07:00
VectorCombine [VectorCombine] fold shuffle-of-binops with common operand 2021-10-21 12:37:54 -04:00
WholeProgramDevirt [test] Update some test cases to use -passes when specifying the pipeline 2021-09-29 21:51:08 +02:00