[all-commits] [llvm/llvm-project] 71f56e: [ConstraintElim] Decompose shl nsw for signed pred...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Fri Jan 5 00:53:18 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 71f56e49ceca75dbf82cbb9537c2545c2d2e51c9
https://github.com/llvm/llvm-project/commit/71f56e49ceca75dbf82cbb9537c2545c2d2e51c9
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-01-05 (Fri, 05 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/shl.ll
Log Message:
-----------
[ConstraintElim] Decompose shl nsw for signed predicates (#76961)
shl nsw x, shift can be interpreted as mul nsw x, (1<<shift), except
when shift is bw-1 (https://alive2.llvm.org/ce/z/vDh2xT). Use this when
decomposing shl. The equivalent decomposition for the unsigned case
already exists.
More information about the All-commits
mailing list