re PR middle-end/33693 (Type checking error with bitwise xor/and)
authorRichard Guenther <rguenther@suse.de>
Mon, 8 Oct 2007 15:23:49 +0000 (15:23 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 8 Oct 2007 15:23:49 +0000 (15:23 +0000)
commitbd113227bf7da8dfe45b9f5db511dadc9b22cb00
tree68d927f3aff3877ad0962683ab193ec9859c84fb
parent1904bef10a80e25e59105a084501097f67621c3f
re PR middle-end/33693 (Type checking error with bitwise xor/and)

2007-10-08  Richard Guenther  <rguenther@suse.de>

PR middle-end/33693
PR middle-end/33695
PR middle-end/33697
* fold-const.c (fold_binary): Use correct types in folding
of a * (1 << b) to (a << b).  Likewise for ~A & ~B to ~(A | B)
and building of RROTATE_EXPR.

* gcc.dg/pr33693.c: New testcase.
* gcc.dg/pr33695.c: Likewise.
* gcc.dg/pr33697.c: Likewise.

From-SVN: r129130
gcc/ChangeLog
gcc/fold-const.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr33693.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr33695.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr33697.c [new file with mode: 0644]