aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fold-const.c5
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))
{