This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tuples][patch] Fixing a bug in tree-complex.c


Committed with those changes.

On Thu, Mar 20, 2008 at 1:46 PM, Diego Novillo <dnovillo@google.com> wrote:
> On Thu, Mar 20, 2008 at 16:37, Oleg Ryjkov <olegr@google.com> wrote:
>
>  >         * tree-complex.c (init_dont_simulate_again, complex_visit_stmt,
>  >         update_complex_components, expand_complex_operations_1): Consider
>  >         GIMPLE_CALLs with a lhs, not only GIMPLE_ASSIGNs.
>  >         * gimplify.c (get_tmp_var_for): Removed.
>  >         (gimplify_call_expr): Remove call to get_tmp_var_for, set
>  >         gimple_register on a new lhs in some cases.
>
>  OK with:
>
>  >       if (TREE_CODE (type) == COMPLEX_TYPE)
>  >         expand_complex_move (gsi, type);
>  >+        /* Only GIMLE_ASSIGN will have gimple_subcode set.  */
>
>  s/GIMLE_ASSIGN/GIMPLE_ASSIGN/
>
>
>  >@@ -2385,8 +2363,15 @@ gimplify_call_expr (tree *expr_p, gimple
>  >   gimplify_seq_add_stmt (pre_p, call);
>  >   if (want_value)
>  >     {
>  >-      tree lhs = get_tmp_var_for (call);
>  >+      /* FIXME tuples: we want to use internal_get_tmp_var.  */
>  >+      tree lhs = create_tmp_var (gimple_call_return_type (call),
>  >+                                 get_name (gimple_call_fn (call)));
>
>  Add to the comment that we want to use internal_get_tmp_var but can't
>  because it wants a value that it gimplifies and the new call is not a
>  tree expression.  internal_get_tmp_var needs to be rewritten to
>  support this and still use the formal temporary table.
>
>
>  Thanks.  Diego.
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]