summaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
AgeCommit message (Expand)Author
2025-06-03[ValueTracking] Make Depth last default arg (NFC) (#142384)Ramkumar Ramachandra
2025-05-08Reapply "IR: Remove uselist for constantdata (#137313)" (#138961)Matt Arsenault
2025-05-07Revert "IR: Remove uselist for constantdata (#137313)"Kirill Stoimenov
2025-05-06IR: Remove uselist for constantdata (#137313)Matt Arsenault
2025-04-28[InstCombine] Preserve the sign bit of NaN in `SimplifyDemandedUseFPClass` (#...Yingwei Zheng
2025-01-25[InstCombine] Drop Range attribute when simplifying 'fshl' based on demanded ...Fangrui Song
2024-12-03[InstCombine] Fold `(X * (Y << K)) u>> K -> X * Y` when highbits are not dema...Yingwei Zheng
2024-11-19[InstCombine] Handle constant GEP expr in `SimplifyDemandedUseBits` (#116794)Yingwei Zheng
2024-11-09[InstCombine] add control for SimplifyDemandedVectorElts depth limit (#113717)Princeton Ferro
2024-10-11[NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752)Rahul Joshi
2024-10-04[InstCombine] Avoid crash on aggregate types in SimplifyDemandedUseFPClass (#...Benjamin Maxwell
2024-10-02[InstCombine] Canonicalize `sub mask, X -> ~X` when high bits are ignored (#1...Yingwei Zheng
2024-10-01[InstCombine] Fix SimplifyDemandedBits recursion cutoff for ArgumentsNikita Popov
2024-09-27InstCombine/Demanded: simplify srem case (NFC) (#110260)Ramkumar Ramachandra
2024-09-25[InstCombine] Fall through to computeKnownBits() for sdiv by -1Nikita Popov
2024-08-12[KnownBits] Add KnownBits::add and KnownBits::sub helper wrappers. (#99468)Simon Pilgrim
2024-08-09[InstCombine] Fixing wrong select folding in vectors with undef elements (#10...Jorge Botto
2024-07-29[PatternMatch] Use `m_SpecificCmp` matchers. NFC. (#100878)Yingwei Zheng
2024-07-18[InstCombine] Turn AShr into LShr more often in SimplifyDemandedUseBits (#99155)Bjorn Pettersson
2024-07-09[InstCombine] Fix typo in `adjustKnownBitsForSelectArm` (#98155)Yingwei Zheng
2024-07-02[InstCombine] Remove root special case in demanded bits simplificationNikita Popov
2024-07-02Reapply [InstCombine] Fix context for multi-use demanded bits simplificationNikita Popov
2024-07-02Revert "[InstCombine] Fix context for multi-use demanded bits simplification"Nikita Popov
2024-07-02[InstCombine] Fix context for multi-use demanded bits simplificationNikita Popov
2024-07-01[InstCombine] Sync KnownBits logic for select armsNikita Popov
2024-07-01[InstCombine] Use KnownBits::ashr()Nikita Popov
2024-07-01[InstCombine] Pass SimplifyQuery to SimplifyDemandedBits()Nikita Popov
2024-06-28[InstCombine] Relax one-use requirement for add iN (sext i1 X), (sext i1 Y) -...AtariDreams
2024-06-18[InstCombine] Fix funnel shift bailout in demanded bits simplificationNikita Popov
2024-06-18[InstCombine] Remove redundant urem demanded bits caseNikita Popov
2024-06-07[KnownBits] Remove `hasConflict()` assertions (#94568)c8ef
2024-04-10[InstCombine] Remove shl if we only demand known signbits of shift source (#7...hanbeom
2024-03-07[InstCombine] ptrmask of gep for dynamic pointer aligment (#80002)Jon Chesterfield
2024-03-05[KnownBits] Add API for `nuw` flag in `computeForAddSub`; NFCNoah Goldstein
2024-02-20[InstCombine] Do not perform binop-of-shuffle when mask is poisonAntonio Frighetto
2024-02-16[InstCombine] Do not simplify lshr/shl arg if it is part of a rotate patternEikansh Gupta
2024-02-08Reapply "InstCombine: Introduce SimplifyDemandedUseFPClass"" (#74056)Matt Arsenault
2024-02-06[InstCombine] Fix assertion failure in issue80597 (#80614)Yingwei Zheng
2023-12-19[InstCombine] Return poison if all lanes are poisonNikita Popov
2023-12-19[InstCombine] Don't treat undef as poison in demanded element simplificationNikita Popov
2023-12-18Revert "[InstCombine] Favour `m_Poison` in `SimplifyDemandedVectorElts`"Nikita Popov
2023-12-18[InstCombine] Favour `m_Poison` in `SimplifyDemandedVectorElts`Antonio Frighetto
2023-12-18[InstCombine] Replace non-demanded undef vector with poisonNikita Popov
2023-12-18[InstCombine] Canonicalize splat shuffles to use poison operandNikita Popov
2023-12-18[InstCombine] Rename UndefElts -> PoisonElts (NFC)Nikita Popov
2023-12-17[InstCombine] Stop propagating `undef` when element is demandedAntonio Frighetto
2023-12-14[InstCombine] Fix insertion pointNikita Popov
2023-12-14[InstCombine] Change (add x, c) to (xor x, c) (#75129)Fujun Han
2023-12-06[InstCombine] Explicitly set disjoint flag when converting xor to or. (#74229)Craig Topper
2023-12-02[InstCombine] Preserve exact instruction name for xor->or transform in Simpli...Craig Topper