[Bug target/59968] Unused BT patterns
hjl.tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Jan 29 20:39:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59968
--- Comment #19 from H.J. Lu <hjl.tools at gmail dot com> ---
For
---
int
foo1 (int x, int y)
{
x &= 1 << y;
return x != 0;
}
---
combine fails to try
(set (reg:CCZ 17 flags)
(compare:CCZ (and:SI (lshiftrt:SI (reg/v:SI 88 [ x ])
(subreg:QI (reg/v:SI 89 [ y ]) 0))
(const_int 1 [0x1]))
(const_int 0 [0])))
(set (reg:SI 94 [ D.1754 ])
(ne:SI (reg:CCZ 17 flags)
(const_int 0 [0])))
which can be turned into
(set (reg:CCC 17 flags)
(compare:CCC (and:SI (lshiftrt:SI (reg/v:SI 88 [ x ])
(subreg:QI (reg/v:SI 89 [ y ]) 0))
(const_int 1 [0x1]))
(const_int 0 [0])))
(set (reg:SI 94 [ D.1754 ])
(ne:SI (reg:CCC 17 flags)
(const_int 0 [0])))
More information about the Gcc-bugs
mailing list