This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[tuples] patch: return after calling gimplify_modify_expr_rhs
- From: Aldy Hernandez <aldyh at redhat dot com>
- To: dnovillo at google dot com, amacleod at redhat dot com, gcc-patches at gcc dot gnu dot org
- Date: Fri, 22 Jun 2007 19:51:25 -0600
- Subject: [tuples] patch: return after calling gimplify_modify_expr_rhs
I made a mistake in my previous recursion after a call to
gimplify_modify_expr_rhs. This fixes it, and fixes the constructor
gimple test.
Committed.
* gimplify.c (gimplify_modify_expr): Return after a successful
call to gimplify_modify_expr_rhs.
Index: gimplify.c
===================================================================
--- gimplify.c (revision 125930)
+++ gimplify.c (working copy)
@@ -3616,7 +3616,7 @@ gimplify_modify_expr (tree *expr_p, gs_s
ret = gimplify_modify_expr_rhs (expr_p, from_p, to_p, pre_p, post_p,
want_value);
if (ret != GS_UNHANDLED)
- return gimplify_modify_expr (expr_p, pre_p, post_p, want_value);
+ return ret;
/* If the value being copied is of variable width, compute the length
of the copy into a WITH_SIZE_EXPR. Note that we need to do this
@@ -3640,7 +3640,7 @@ gimplify_modify_expr (tree *expr_p, gs_s
ret = gimplify_modify_expr_rhs (expr_p, from_p, to_p, pre_p, post_p,
want_value);
if (ret != GS_UNHANDLED)
- return gimplify_modify_expr (expr_p, pre_p, post_p, want_value);
+ return ret;
/* If we've got a variable sized assignment between two lvalues (i.e. does
not involve a call), then we can make things a bit more straightforward