summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/java/ChangeLog3
-rw-r--r--gcc/java/jcf-write.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 298cc4ca514..3b719361958 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,5 +1,8 @@
2001-03-17 Per Bothner <per@bothner.com>
+ * jcf-write.c (generate_bytecode_insns): Handle emitting iinc
+ when result is is needed (target is STACK_TARGET).
+
* parse.h (JDEP_SOLV): Removed.
* parse.y (incomplete_class_list): Removed.
(register_incomplete_type): Use JDEP_TO_RESOLVE instead of JDEP_SOLV.
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c
index 5cb4fb368a2..f819d835ad5 100644
--- a/gcc/java/jcf-write.c
+++ b/gcc/java/jcf-write.c
@@ -2009,6 +2009,8 @@ generate_bytecode_insns (exp, target, state)
if (TREE_CODE (rhs) == MINUS_EXPR)
value = -value;
emit_iinc (lhs, value, state);
+ if (target != IGNORE_TARGET)
+ emit_load (lhs, state);
break;
}
}