re PR middle-end/52134 (Does not fold (x * 4) & -4)
authorRichard Guenther <rguenther@suse.de>
Tue, 13 Mar 2012 13:47:35 +0000 (13:47 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 13 Mar 2012 13:47:35 +0000 (13:47 +0000)
commit0c12cd5e90c8582adc5ed452d9eaa910f682b94b
treea723864fdb306ca7d449b2c1a29153a13668ea83
parent2895dfa4176e7739f5c5469a526d62696dc327f2
re PR middle-end/52134 (Does not fold (x * 4) & -4)

2012-03-13  Richard Guenther  <rguenther@suse.de>

PR middle-end/52134
* fold-const.c (fold_binary_loc): Fold (X * Y) & -(1 << CST) to X * Y
if Y is a constant multiple of 1 << CST.

* gcc.dg/pr52134.c: New testcase.

From-SVN: r185334
gcc/ChangeLog
gcc/fold-const.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr52134.c [new file with mode: 0644]