This removes dispatching to fold_binary from fold_gimple_assign
with GIMPLE_BINARY_RHS.  As usual tested that it doesn't trigger
anymore on a bootstrap & regtest on x86_64-unknown-linux-gnu.

Bootstrapped and tested on x86_64-unknown-linux-gnu, applied.

Richard.

2015-07-31  Richard Biener  <rguent...@suse.de>

        * gimple-fold.c (fold_gimple_assign): Remove folding of
        GIMPLE_BINARY_RHS.

Index: gcc/gimple-fold.c
===================================================================
--- gcc/gimple-fold.c   (revision 226406)
+++ gcc/gimple-fold.c   (working copy)
@@ -413,20 +413,6 @@ fold_gimple_assign (gimple_stmt_iterator
       break;
 
     case GIMPLE_BINARY_RHS:
-      if (TREE_CODE_CLASS (subcode) != tcc_comparison)
-       {
-         result = fold_binary_loc (loc, subcode,
-                                   TREE_TYPE (gimple_assign_lhs (stmt)),
-                                   gimple_assign_rhs1 (stmt),
-                                   gimple_assign_rhs2 (stmt));
-
-         if (result)
-           {
-             STRIP_USELESS_TYPE_CONVERSION (result);
-             if (valid_gimple_rhs_p (result))
-               return result;
-           }
-       }
       break;
 
     case GIMPLE_TERNARY_RHS:

Reply via email to