[all-commits] [llvm/llvm-project] a2ce10: [ConstraintElim] Use range-based NUW/NSW inferrenc...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Mon Sep 7 14:42:44 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a2ce10c7c93b22ebe3540dbd2c88e5cf202860de
https://github.com/llvm/llvm-project/commit/a2ce10c7c93b22ebe3540dbd2c88e5cf202860de
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-09-07 (Mon, 07 Sep 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/add-nsw.ll
M llvm/test/Transforms/ConstraintElimination/cond-used-in-phi.ll
M llvm/test/Transforms/ConstraintElimination/induction-condition-in-loop-exit-postinc.ll
M llvm/test/Transforms/ConstraintElimination/induction-condition-in-loop-exit.ll
M llvm/test/Transforms/ConstraintElimination/induction-nowrap-from-scev-not-ir.ll
M llvm/test/Transforms/ConstraintElimination/loops.ll
M llvm/test/Transforms/ConstraintElimination/monotonic-int-phis-cfg.ll
M llvm/test/Transforms/ConstraintElimination/monotonic-int-phis-decrement.ll
M llvm/test/Transforms/ConstraintElimination/monotonic-int-phis-wrapping.ll
M llvm/test/Transforms/ConstraintElimination/pr70510.ll
M llvm/test/Transforms/ConstraintElimination/transfer-signed-facts-to-unsigned-is-known-non-negative.ll
M llvm/test/Transforms/ConstraintElimination/wrapping-math.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/trunc-intrinsics.ll
Log Message:
-----------
[ConstraintElim] Use range-based NUW/NSW inferrence for Add. (#221487)
Factor out logic to strengthen NUW/NSW flags based on know no-wrap
regions and also use it for ADD.
This enables a number of additional folds in real-world workloads:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1215
Compile-time impact in the noise for geomean. Per workload there are a
few improvements and one regression `lencod` (stage1-ReleaseThinLTO)
https://llvm-compile-time-tracker.com/compare.php?from=bb577f620571ce3bb97f2e717b53500574a9cf27&to=6de758abcfa6fb6e9de359b1fb5cfb67b689afe5&stat=instructions:u
PR: https://github.com/llvm/llvm-project/pull/221487
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list