https://bugs.llvm.org/show_bug.cgi?id=52402
Bug ID: 52402
Summary: [InstCombine] fold multiply and equality compare with
constant
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: Scalar Optimizations
Assignee: unassignedb...@nondot.org
Reporter: spatel+l...@rotateright.com
CC: llvm-bugs@lists.llvm.org
Forking this off from bug 52289 - I don't know what the generalization is, but
we're missing some kind of overflowing/shifting/multiplying magic:
define i1 @src(i32 %x) {
%m = mul i32 %x, 1355350016 ; 0x50c90000
%r = icmp eq i32 %m, 65536 ; 0x00010000
ret i1 %r
}
define i1 @tgt(i32 %x) {
%t = trunc i32 %x to i16
%r = icmp eq i16 %t, 51577 ; 0xc979
ret i1 %r
}
https://alive2.llvm.org/ce/z/7Ft6jA
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs