]> gcc.gnu.org Git - gcc.git/commitdiff
(fold...
authorRichard Kenner <kenner@gcc.gnu.org>
Fri, 23 Apr 1993 10:55:07 +0000 (06:55 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Fri, 23 Apr 1993 10:55:07 +0000 (06:55 -0400)
(fold, case REALPART_EXPR, IMAGPART_EXPR): Avoid using
build_{unary,binary}_op since the calling sequences depend on the
front-end.

From-SVN: r4194

gcc/fold-const.c

index d40e9c8253aa945fa3287a5ee84e604c695dcd09..84e89c86b6ea4add21a251d32207905f13413b1b 100644 (file)
@@ -4440,14 +4440,11 @@ fold (expr)
       else if (TREE_CODE (arg0) == COMPLEX_CST)
        return TREE_REALPART (arg0);
       else if (TREE_CODE (arg0) == PLUS_EXPR || TREE_CODE (arg0) == MINUS_EXPR)
-       return build_binary_op (TREE_CODE (arg0), type,
-                               build_unary_op (REALPART_EXPR,
-                                               TREE_OPERAND (arg0, 0),
-                                               1),
-                               build_unary_op (REALPART_EXPR,
-                                               TREE_OPERAND (arg0, 1),
-                                               1),
-                               0);
+       return fold (build (TREE_CODE (arg0), type,
+                           fold (build1 (REALPART_EXPR, type,
+                                         TREE_OPERAND (arg0, 0))),
+                           fold (build1 (REALPART_EXPR,
+                                         type, TREE_OPERAND (arg0, 1)))));
       return t;
 
     case IMAGPART_EXPR:
@@ -4459,14 +4456,11 @@ fold (expr)
       else if (TREE_CODE (arg0) == COMPLEX_CST)
        return TREE_IMAGPART (arg0);
       else if (TREE_CODE (arg0) == PLUS_EXPR || TREE_CODE (arg0) == MINUS_EXPR)
-       return build_binary_op (TREE_CODE (arg0), type,
-                               build_unary_op (IMAGPART_EXPR,
-                                               TREE_OPERAND (arg0, 0),
-                                               1),
-                               build_unary_op (IMAGPART_EXPR,
-                                               TREE_OPERAND (arg0, 1),
-                                               1),
-                               0);
+       return fold (build (TREE_CODE (arg0), type,
+                           fold (build1 (IMAGPART_EXPR, type,
+                                         TREE_OPERAND (arg0, 0))),
+                           fold (build1 (IMAGPART_EXPR, type,
+                                         TREE_OPERAND (arg0, 1)))));
       return t;
 
     default:
This page took 0.065844 seconds and 5 git commands to generate.