The pattern became optimized after b92412fb286b.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
LGTM - feel free to add tests without pre-commit review.
I would add the 'or' variant of this pattern too for completeness:
define i32 @not_reassociate_or_or_not(i32 %a, i32 %b, i32 %c, i32 %d) {
%notb = xor i32 %b, -1
%notc = xor i32 %c, -1
%b1 = or i32 %a, %notb
%b2 = or i32 %b1, %d
%b3 = or i32 %b2, %notc
ret i32 %b3
}| llvm/test/Transforms/PhaseOrdering/reassociate-instcombine.ll | ||
|---|---|---|
| 5 | siplify -> "allow Demorgan logic fold" ? | |
siplify -> "allow Demorgan logic fold" ?