aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
AgeCommit message (Expand)AuthorFilesLines
2023-01-22[NFC][SCEVExpander] `CmpSelCost`: use the cost of the expression, not operandRoman Lebedev1-1/+1
2023-01-22[NFC][SCEV] `getRelevantLoop()`: deduplicate handlingRoman Lebedev1-14/+4
2023-01-22[NFC][SCEV] Reflow `getRelevantLoop()` into an exhaustive switchRoman Lebedev1-16/+33
2023-01-11[NFC] Use TypeSize::geFixedValue() instead of TypeSize::getFixedSize()Guillaume Chatelet1-2/+2
2023-01-10Do not short circuit hoistIVInc when recomputation of poison flags is needed.Owen Anderson1-15/+21
2022-12-16[SCEV] Return ArrayRef for SCEV operands() (NFC)Nikita Popov1-3/+3
2022-12-13[SCEVExpander] Produce canonical constant GEPNikita Popov1-2/+1
2022-11-01[SCEVExpander] Forget SCEV when replacing congruent phi.Florian Hahn1-0/+1
2022-09-29[SCEVExpander] Move LCSSA fixup to ::expand.Florian Hahn1-51/+32
2022-09-29[SCEVExpander] Use CreateBitOrPointerCast instead of builder (NFC).Florian Hahn1-10/+6
2022-09-28[SCEVExpander] Remove dead Root argument from expandCodeForImpl (NFC).Florian Hahn1-32/+32
2022-09-13[SCEVExpander] Recompute poison-generating flags on hoisting. PR57187Max Kazantsev1-2/+18
2022-09-10Use PoisonValue instead of UndefValue when RAUWing unreachable code [NFC]Manuel Brito1-1/+1
2022-08-13[llvm] Qualify auto in range-based for loops (NFC)Kazu Hirata1-1/+1
2022-08-07[llvm] Fix comment typos (NFC)Kazu Hirata1-3/+3
2022-07-15[LSR] Create SCEVExpander earlier, use member isSafeToExpand() (NFC)Nikita Popov1-7/+1
2022-07-14[SCEVExpander] Allow udiv with isKnownNonZero(RHS) + add vscale casePhilip Reames1-5/+2
2022-07-14[LoopPredication] Use isSafeToExpandAt() member function (NFC)Nikita Popov1-9/+4
2022-07-14[SCEVExpander] Make CanonicalMode handing in isSafeToExpand() more robust (PR...Nikita Popov1-2/+11
2022-07-04[SCEVExpander] Avoid ConstantExpr::get() (NFCI)Nikita Popov1-1/+2
2022-06-30[IRBuilder] Migrate all binops to folding APINikita Popov1-1/+3
2022-06-09[NFC] format InstructionSimplify & lowerCaseFunctionNamesSimon Moll1-1/+1
2022-06-08[NFC] Remove commented cerr debugging loggingsChuanqi Xu1-1/+0
2022-05-18[SCEVExpander] Expand umin_seq using freezeNikita Popov1-16/+7
2022-05-11[SCEVExpander] Deduplicate min/max expansion code (NFC)Nikita Popov1-64/+12
2022-05-10[SCEVExpander] Remove handling for mixed int/pointer min/max (NFCI)Nikita Popov1-44/+0
2022-03-01Cleanup includes: TransformsUtilsserge-sans-paille1-3/+0
2022-02-25[SCEVExpander] Use early returns in FindValueInExprValueMap() (NFC)Nikita Popov1-19/+20
2022-02-25[SCEV] Return ArrayRef from getSCEVValues() (NFC)Nikita Popov1-4/+4
2022-02-25[SCEV] Don't try to reuse expressions with offsetNikita Popov1-40/+12
2022-02-17[SCEVExpander][OpaquePtr] Check GEP source type when finding identical GEPArthur Eubanks1-1/+3
2022-02-09[SCEV] Unwind SCEVUnionPredicate from getPredicatedBackedgeTakenCount [NFC]Philip Reames1-1/+2
2022-02-08[SCEV] Generalize SCEVEqualsPredicate to any compare [NFC]Philip Reames1-5/+6
2022-02-05[Transforms] Use default member initialization in SCEVFindUnsafe (NFC)Kazu Hirata1-2/+2
2022-01-26[SCEVExpander] Always use i8 GEP for reused value offsetNikita Popov1-15/+7
2022-01-26[SCEVExpander] Remove pointer element type access in assertionNikita Popov1-1/+1
2022-01-25[NFC] Remove uses of PointerType::getElementType()Nikita Popov1-4/+4
2022-01-11[SCEVExpander] Use IntToPtr for temporary instruction.Florian Hahn1-2/+2
2022-01-10[SCEV] Sequential/in-order `UMin` expressionRoman Lebedev1-6/+58
2022-01-10[SCEVExpander] Only create trunc when needed.Florian Hahn1-3/+3
2022-01-10[SCEVExpander] Only create multiplication if needed.Florian Hahn1-15/+16
2022-01-09[SCEVExpander] Simplify cleanup, skip sorting by dominance.Florian Hahn1-6/+1
2022-01-09[SCEVExpander] Only check overflow if it is needed.Florian Hahn1-2/+2
2022-01-08[SCEVExpander] Skip creating <u 0 check, which is always false.Florian Hahn1-30/+38
2022-01-07[SCEVExpand] Only create required predicate checks.Florian Hahn1-16/+31
2022-01-07[llvm] Use true/false instead of 1/0 (NFC)Kazu Hirata1-1/+1
2022-01-06[SCEVExpand] Do not create redundant 'or false' for pred expansion.Florian Hahn1-6/+5
2021-12-13[llvm] Use llvm::reverse (NFC)Kazu Hirata1-3/+3
2021-11-29[SCEVExpander] Drop poison generating flags when reusing instructionsPhilip Reames1-36/+32
2021-11-09[SCEVExpander] Use stable_sort to sort loop Phis in SCEVExpander::replaceCong...Dmitry Makogon1-1/+3