diff options
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/expr.c b/gcc/expr.c index 943a4c44caa..ec0306fa32d 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -1,7 +1,7 @@ /* Convert tree expression to rtl instructions, for GNU compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, - Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. This file is part of GCC. @@ -6301,7 +6301,7 @@ highest_pow2_factor (tree exp) a MIN_EXPR, or a MAX_EXPR. If the constant overflows, we have an erroneous program, so return BIGGEST_ALIGNMENT to avoid any later ICE. */ - if (TREE_CONSTANT_OVERFLOW (exp)) + if (TREE_OVERFLOW (exp)) return BIGGEST_ALIGNMENT; else { @@ -6969,7 +6969,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, 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_OVERFLOW (exp) && modifier != EXPAND_INITIALIZER) temp = force_reg (mode, temp); |