------- Comment #2 from rguenth at gcc dot gnu dot org  2008-05-25 17:18 -------
Which was just a workaround.  It needs proper fixing so that

Index: tree-gimple.c
===================================================================
--- tree-gimple.c       (revision 135859)
+++ tree-gimple.c       (working copy)
@@ -116,10 +116,7 @@ is_gimple_mem_rhs (tree t)
      a renamed variable.  Also force a temporary if the type doesn't need
      to be stored in memory, since it's cheap and prevents erroneous
      tailcalls (PR 17526).  */
-  if (is_gimple_reg_type (TREE_TYPE (t))
-      || (TYPE_MODE (TREE_TYPE (t)) != BLKmode
-         && (TREE_CODE (t) != CALL_EXPR
-              || ! aggregate_value_p (t, t))))
+  if (is_gimple_reg_type (TREE_TYPE (t)))
     return is_gimple_val (t);
   else
     return is_gimple_formal_tmp_rhs (t);

doesn't regress.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36326

Reply via email to