OSDN Git Service

Revert hunks not part of last patch.
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Apr 2003 21:35:44 +0000 (21:35 +0000)
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Apr 2003 21:35:44 +0000 (21:35 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65908 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fold-const.c

index 146f40f..fa64fd2 100644 (file)
@@ -4182,12 +4182,8 @@ extract_muldiv_1 (t, c, code, wide_type)
       /* Pass the constant down and see if we can make a simplification.  If
         we can, replace this expression with the inner simplification for
         possible later conversion to our or some other type.  */
-      if ((t2 = convert (TREE_TYPE (op0), c)) != 0
-         && TREE_CODE (t2) == INTEGER_CST
-         && ! TREE_CONSTANT_OVERFLOW (t2)
-         && (0 != (t1 = extract_muldiv (op0, t2, code,
-                                        code == MULT_EXPR
-                                        ? ctype : NULL_TREE))))
+      if (0 != (t1 = extract_muldiv (op0, convert (TREE_TYPE (op0), c), code,
+                                    code == MULT_EXPR ? ctype : NULL_TREE)))
        return t1;
       break;
 
@@ -5482,17 +5478,13 @@ fold (expr)
              if (TREE_CODE (parg0) == MULT_EXPR
                  && TREE_CODE (parg1) != MULT_EXPR)
                return fold (build (PLUS_EXPR, type,
-                                   fold (build (PLUS_EXPR, type, 
-                                                convert (type, parg0), 
-                                                convert (type, marg))),
-                                   convert (type, parg1)));
+                                   fold (build (PLUS_EXPR, type, parg0, marg)),
+                                   parg1));
              if (TREE_CODE (parg0) != MULT_EXPR
                  && TREE_CODE (parg1) == MULT_EXPR)
                return fold (build (PLUS_EXPR, type,
-                                   fold (build (PLUS_EXPR, type, 
-                                                convert (type, parg1), 
-                                                convert (type, marg))),
-                                   convert (type, parg0)));
+                                   fold (build (PLUS_EXPR, type, parg1, marg)),
+                                   parg0));
            }
 
          if (TREE_CODE (arg0) == MULT_EXPR && TREE_CODE (arg1) == MULT_EXPR)
@@ -5824,8 +5816,7 @@ fold (expr)
                                TREE_OPERAND (arg0, 1)));
 
          if (TREE_CODE (arg1) == INTEGER_CST
-             && 0 != (tem = extract_muldiv (TREE_OPERAND (t, 0),
-                                            convert (type, arg1),
+             && 0 != (tem = extract_muldiv (TREE_OPERAND (t, 0), arg1,
                                             code, NULL_TREE)))
            return convert (type, tem);