Commit 49a2e5b2 by Doug Evans

* function.c (aggregate_value_p): Return 1 if TREE_ADDRESSABLE.

From-SVN: r11957
parent 4dabb379
...@@ -3192,6 +3192,10 @@ aggregate_value_p (exp) ...@@ -3192,6 +3192,10 @@ aggregate_value_p (exp)
if (RETURN_IN_MEMORY (type)) if (RETURN_IN_MEMORY (type))
return 1; return 1;
/* Types that are TREE_ADDRESSABLE must be contructed in memory,
and thus can't be returned in registers. */
if (TREE_ADDRESSABLE (type))
return 1;
if (flag_pcc_struct_return && AGGREGATE_TYPE_P (type)) if (flag_pcc_struct_return && AGGREGATE_TYPE_P (type))
return 1; return 1;
/* Make sure we have suitable call-clobbered regs to return /* Make sure we have suitable call-clobbered regs to return
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment