fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X.
authorRoger Sayle <roger@eyesopen.com>
Sun, 29 Oct 2006 21:41:48 +0000 (21:41 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Sun, 29 Oct 2006 21:41:48 +0000 (21:41 +0000)
commitc159ffe7060983000c4cd595318fc08c3983db66
treef4d6cffd55adc058d815562150ef8f07f2e13b87
parent153ae66aeea1d7b38af1cf77a4107db5964a759a
fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X.

* fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X.
Fold ~X op C as X op' ~C, where op' is the swapped comparison.
(fold_binary): ~X eq/ne C is now handled in fold_comparison.
Fold -X eq/ne -Y as X eq/ne Y.

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

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