match.pd: X + X --> X * 2 for integers
commit6b6aa8d388ce3a330fb65db4e9d5120fbe3c1fe7
authorMarc Glisse <marc.glisse@inria.fr>
Tue, 26 Apr 2016 14:02:09 +0000 (26 16:02 +0200)
committerMarc Glisse <glisse@gcc.gnu.org>
Tue, 26 Apr 2016 14:02:09 +0000 (26 14:02 +0000)
treec9d8cd56bc07eff23e7a6bbb4f64796773adab46
parenta84454dc451034e76d05f0b23ad2bffceb8cac05
match.pd: X + X --> X * 2 for integers

2016-04-26  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* genmatch.c (write_predicate): Add ATTRIBUTE_UNUSED.
* fold-const.c (fold_binary_loc): Remove 2 transformations
superseded by match.pd.
* match.pd (x+x -> x*2): Generalize to integers.

gcc/testsuite/
* gcc.dg/fold-plusmult.c: Adjust.
* gcc.dg/no-strict-overflow-6.c: Adjust.
* gcc.dg/gomp/loop-1.c: Xfail some tests.

From-SVN: r235444
gcc/ChangeLog
gcc/fold-const.c
gcc/genmatch.c
gcc/match.pd
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/fold-plusmult.c
gcc/testsuite/gcc.dg/gomp/loop-1.c
gcc/testsuite/gcc.dg/no-strict-overflow-6.c