expr.c (expand_expr): Don't force into registers if EXPAND_INITIALIZER.

* expr.c (expand_expr) [INTEGER_CST]: Don't force into registers
        if EXPAND_INITIALIZER.

From-SVN: r52117
This commit is contained in:
Richard Henderson 2002-04-10 00:10:18 -07:00 committed by Richard Henderson
parent 0dc8f2034b
commit c506336394
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2002-04-10 Richard Henderson <rth@redhat.com>
* expr.c (expand_expr) [INTEGER_CST]: Don't force into registers
if EXPAND_INITIALIZER.
2002-04-10 Alan Modra <amodra@bigpond.net.au>
PR optimization/6233

View File

@ -6326,7 +6326,8 @@ expand_expr (exp, target, tmode, modifier)
simplified by validate_replace_rtx during virtual register
instantiation, which can result in unrecognizable insns.
Avoid this by forcing all overflows into registers. */
if (TREE_CONSTANT_OVERFLOW (exp))
if (TREE_CONSTANT_OVERFLOW (exp)
&& modifier != EXPAND_INITIALIZER)
temp = force_reg (mode, temp);
return temp;