[all-commits] [llvm/llvm-project] 98e016: [ConstraintElim] Handle trivial (ICMP_ULE, 0, B) i...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Wed Sep 27 04:12:09 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 98e016d99732dc8fef8cfd61d6ce1edd042309a1
https://github.com/llvm/llvm-project/commit/98e016d99732dc8fef8cfd61d6ce1edd042309a1
Author: Florian Hahn <flo at fhahn.com>
Date: 2023-09-27 (Wed, 27 Sep 2023)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/add-nsw.ll
M llvm/test/Transforms/ConstraintElimination/add-nuw.ll
M llvm/test/Transforms/ConstraintElimination/and.ll
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic-add.ll
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll
M llvm/test/Transforms/ConstraintElimination/loops-header-tested-pointer-cmps.ll
M llvm/test/Transforms/ConstraintElimination/loops-header-tested-pointer-iv.ll
M llvm/test/Transforms/ConstraintElimination/monotonic-int-phis-cfg.ll
M llvm/test/Transforms/ConstraintElimination/monotonic-int-phis.ll
M llvm/test/Transforms/ConstraintElimination/transfer-signed-facts-to-unsigned.ll
M llvm/test/Transforms/ConstraintElimination/transfer-unsigned-facts-to-signed.ll
M llvm/test/Transforms/ConstraintElimination/usub-with-overflow.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
Log Message:
-----------
[ConstraintElim] Handle trivial (ICMP_ULE, 0, B) in doesHold.
D152730 may add trivial pre-conditions of the form (ICMP_ULE, 0, B),
which won't be handled automatically by the constraint system, because
we don't add Var >= 0 for all variables in the unsigned system.
Handling the trivial condition explicitly here avoids having the
increase the number of rows in the system per variable.
https://alive2.llvm.org/ce/z/QC92ur
Depends on D152730.
Fixes #63125.
Reviewed By: nikic
Differential Revision: https://reviews.llvm.org/D158776
More information about the All-commits
mailing list