diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fold-const.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 00d25f1..76bab59 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-11-06 Kazu Hirata <kazu@cs.umass.edu> + + * fold-const.c (non_lvalue): Don't construct NON_LVALUE_EXPR + if we are in GIMPLE. + 2004-11-06 Hans-Peter Nilsson <hp@bitrange.com> PR rtl-optimization/17933 diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 01054d1..0084020 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -1978,6 +1978,11 @@ fold_convert (tree type, tree arg) tree non_lvalue (tree x) { + /* While we are in GIMPLE, NON_LVALUE_EXPR doesn't mean anything to + us. */ + if (in_gimple_form) + return x; + /* We only need to wrap lvalue tree codes. */ switch (TREE_CODE (x)) { |