| Age | Commit message (Expand) | Author |
| 2024-10-11 | [NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752) | Rahul Joshi |
| 2024-08-27 | [InstCombine] Simplify `(add/sub (sub/add) (sub/add))` irrelivant of use-count | Noah Goldstein |
| 2024-08-21 | [InstCombine] Fold `sext(A < B) + zext(A > B)` into `ucmp/scmp(A, B)` (#103833) | Volodymyr Vasylkun |
| 2024-08-21 | [InstCombine] Remove some of the complexity-based canonicalization (#91185) | Nikita Popov |
| 2024-08-16 | [InstCombine] Preserve nsw in A + -B fold | Nikita Popov |
| 2024-07-29 | [PatternMatch] Use `m_SpecificCmp` matchers. NFC. (#100878) | Yingwei Zheng |
| 2024-07-12 | [InstCombine] Fold (zext (X +nuw C)) + -C --> zext(X) when zext has additiona... | Craig Topper |
| 2024-06-08 | [InstCombine] Preserve the nsw/nuw flags for (X | Op01C) + Op1C --> X + (Op01... | csstormq |
| 2024-06-01 | [InstCombine] Fold `(add X, (sext/zext (icmp eq X, C)))` | Noah Goldstein |
| 2024-05-09 | [InstCombine] Handle more commuted cases in matchesSquareSum() | Nikita Popov |
| 2024-04-26 | [InstCombine] Fix use-after-free in OptimizePointerDifference() | Nikita Popov |
| 2024-04-26 | [InstCombine] Allow multi-use OptimizePointerDifference() with two GEPs (#90017) | Nikita Popov |
| 2024-04-25 | [InstCombine] Fold fneg over select (#89947) | Yingwei Zheng |
| 2024-04-24 | [InstCombine] Simplify `(X / C0) * C1 + (X % C0) * C2` to `(X / C0) * (C1 - C... | Yingwei Zheng |
| 2024-04-19 | [InstCombine] Regard zext nneg as sext when folding add(zext neg(add)) (#88887) | ZelinMa557 |
| 2024-04-18 | [IR][PatternMatch] Only accept poison in getSplatValue() (#89159) | Nikita Popov |
| 2024-04-17 | [InstCombine] Don't use dominating conditions to transform sub into xor. (#88... | Craig Topper |
| 2024-04-16 | [ValueTracking] Restore isKnownNonZero parameter order. (#88873) | Harald van Dijk |
| 2024-04-12 | [ValueTracking] Convert `isKnownNonZero` to use SimplifyQuery (#85863) | Yingwei Zheng |
| 2024-03-26 | [LLVM] Remove nuw neg (#86295) | Yingwei Zheng |
| 2024-03-21 | [InstCombine] integrate `N{U,S}WAddLike` into existing folds | Noah Goldstein |
| 2024-03-06 | [InstCombine] Add folds for `(fp_binop ({s|u}itofp x), ({s|u}itofp y))` | Noah Goldstein |
| 2024-03-06 | [InstCombine] Move folding `(add (sitofp x), (sitofp y))` impl to Instruction... | Noah Goldstein |
| 2024-02-26 | [InstCombine] Fold (sub (xor X, (sext C)), (sext C)) => (select C (neg X), X)... | Kai Luo |
| 2024-02-06 | [ValueTracking][NFC] Pass `SimplifyQuery` to `computeKnownFPClass` family (#8... | Yingwei Zheng |
| 2024-01-15 | [InstCombine] Add folds for `(add/sub/disjoint_or/icmp C, (ctpop (not x)))` | Noah Goldstein |
| 2024-01-10 | [InstCombine] Fold the `log2_ceil` idiom (#76661) | Yingwei Zheng |
| 2024-01-04 | [InstCombine] Refactor folding of commutative binops over select/phi/minmax (... | Yingwei Zheng |
| 2023-12-27 | [InstCombine] Use ConstantInt::getSigned to sign extend -2 for large types. (... | Craig Topper |
| 2023-12-06 | [InstCombine] Explicitly set disjoint flag when converting xor to or. (#74229) | Craig Topper |
| 2023-12-05 | [InstCombine] Use disjoint flag in add of or fold | Nikita Popov |
| 2023-12-04 | [InstCombine] Add one-use limitation to box multiply fold (#72876) | shaojingzhi |
| 2023-11-30 | [InstCombine] Handle equality comparison when flooring by constant 2 | Antonio Frighetto |
| 2023-11-27 | [InstCombine] Set disjoint flag when turning Add into Or. (#72702) | Craig Topper |
| 2023-11-20 | [InstCombine] Add transform for `~X + ~Y)` -> `-2 - Y - X` | Noah Goldstein |
| 2023-11-20 | [InstCombine] Replace `isFreeToInvert` + `CreateNot` with `getFreelyInverted` | Noah Goldstein |
| 2023-11-20 | [InstCombine] Make `isFreeToInvert` check recursively. | Noah Goldstein |
| 2023-11-20 | [InstCombine] Add folds for `(X + Y) - (W + Z)` | Noah Goldstein |
| 2023-11-20 | [InstCombine] Propagate NSW/NUW flags for `(X - Y) - Z -> X - (Y + Z)` (#72693) | Yingwei Zheng |
| 2023-11-16 | [InstCombine] Infer nuw flags for `C-(X+C2)` -> `(C-C2)-X` (#72373) | Yingwei Zheng |
| 2023-11-15 | [InstCombine] Follow-up to "When -A + B both have nsw flag, set nsw f… (#72... | Z572 |
| 2023-11-14 | [InstCombine] When -A + B both have nsw flag, set nsw flag. (#72127) | Z572 |
| 2023-11-06 | [InstCombine] Avoid use of FP cast constant expressions (NFC) | Nikita Popov |
| 2023-10-17 | [InstCombine] Create a class to lazily track computed known bits (#66611) | Dhruv Chawla |
| 2023-10-10 | [ValueTracking] Use SimplifyQuery in haveNoCommonBitsSet() (NFC) | Nikita Popov |
| 2023-09-28 | [InstCombine] Avoid some uses of ConstantExpr::getZExt() (NFC) | Nikita Popov |
| 2023-09-14 | [InstCombine] Propagate nsw flag when negating | Nikita Popov |
| 2023-09-01 | [InstCombine] Contracting x^2 + 2*x*y + y^2 to (x + y)^2 (float) | Christoph Stiller |
| 2023-08-28 | IR: Add operator | and & for FastMathFlags | Matt Arsenault |
| 2023-08-16 | [InstCombine] Transform `(add (shl (neg X), Cnt))` -> `(sub (shl X, Cnt))` | Noah Goldstein |