Displaying 2 results from an estimated 2 matches for "tmp266".
Did you mean:
tmp26
2008 Oct 08
0
[LLVMdev] [PATCH] Lost instcombine opportunity: "or"s of "icmp"s (commutability)
...ntually ORs them together. The
patch has it optimized to OR the two values first then truncate a
single value.
%tmp264not = xor i8 %tmp264, -1 ; <i8> [#uses=1]
%tmp212 = trunc i32 %iftmp.36.0 to i8 ; <i8> [#uses=2]
%tmp265 = trunc i32 %tmp261 to i8 ; <i8> [#uses=1]
%tmp266 = or i8 %tmp212, %tmp264not ; <i8> [#uses=2]
%tmp268 = or i8 %tmp266, %tmp265 ; <i8> [#uses=1]
%tmp264not = xor i8 %tmp264, -1 ; <i8> [#uses=2]
%a.c45 = or i32 %iftmp.36.0, %tmp261 ; <i32> [#uses=1]
trunc i32 %a.c45 to i8 ; <i8>:0 [#uses=1]
%tmp...
2008 Oct 08
3
[LLVMdev] Lost instcombine opportunity: "or"s of "icmp"s (commutability)
instcombine can handle certain orders of "icmp"s that are "or"ed together:
x != 5 OR x > 10 OR x == 8 becomes..
x != 5 OR x == 8 becomes..
x != 5
However, a different ordering prevents the simplification:
x == 8 OR x > 10 OR x != 5 becomes..
%or.eq8.gt10 OR x != 5
and that can't be simplified because we now have an "or" OR "icmp".
What would I