Commit 99098c66 by Richard Kenner

(expr_size): If the size contains a PLACEHOLDER_EXPR, surround it with

a WITH_RECORD_EXPR.

From-SVN: r5582
parent dec20b4b
...@@ -242,8 +242,13 @@ rtx ...@@ -242,8 +242,13 @@ rtx
expr_size (exp) expr_size (exp)
tree exp; tree exp;
{ {
return expand_expr (size_in_bytes (TREE_TYPE (exp)), tree size = size_in_bytes (TREE_TYPE (exp));
NULL_RTX, TYPE_MODE (sizetype), 0);
if (TREE_CODE (size) != INTEGER_CST
&& contains_placeholder_p (size))
size = build (WITH_RECORD_EXPR, sizetype, size, exp);
return expand_expr (size, NULL_RTX, TYPE_MODE (sizetype), 0);
} }
/* Return a copy of X in which all memory references /* Return a copy of X in which all memory references
......
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