fold-const.c (fold_unary): Fold (T1)(~(T2)X) as ~(T1)X...
authorRoger Sayle <roger@eyesopen.com>
Tue, 28 Mar 2006 17:06:19 +0000 (17:06 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Tue, 28 Mar 2006 17:06:19 +0000 (17:06 +0000)
commite8206491f015e63752c9db55d1b887a69d45b6af
treeda262e848274dd56c1a6e2548ba2152e0008a4b6
parent792617a52abfb67c52c6bec3a431fdc193773786
fold-const.c (fold_unary): Fold (T1)(~(T2)X) as ~(T1)X...

* fold-const.c (fold_unary) <NOP_EXPR>: Fold (T1)(~(T2)X) as
~(T1)X, when T1 and T2 are integer types of the same precision
and (T2)X isn't an extension.

* gcc.dg/fold-convnotconv-1.c: New test case.

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