aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2001-09-17 17:03:13 +0000
committerTom Tromey <tromey@gcc.gnu.org>2001-09-17 17:03:13 +0000
commit7a91449ca19c444f48b8bc36f6a665dbec267706 (patch)
treec5e256cce6e24b276b8ed6592e302e118eb0d4de /gcc/java
parent17920efbf030175a74a49e970ca2a5198cff4458 (diff)
downloadgcc-7a91449ca19c444f48b8bc36f6a665dbec267706.zip
gcc-7a91449ca19c444f48b8bc36f6a665dbec267706.tar.gz
gcc-7a91449ca19c444f48b8bc36f6a665dbec267706.tar.bz2
re PR java/4189 (gcj generates bytecode for switch stmt that doesn't verify)
* jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Call NOTE_PUSH for single-case push. Fixes PR java/4189. From-SVN: r45655
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog5
-rw-r--r--gcc/java/jcf-write.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 2c2f77c..b380aec 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2001-09-16 Tom Tromey <tromey@redhat.com>
+
+ * jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Call
+ NOTE_PUSH for single-case push. Fixes PR java/4189.
+
2001-09-13 Alexandre Petit-Bianco <apbianco@redhat.com>
* java-tree.h (TYPE_IMPORT_LIST): New macro.
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c
index 44c676f..3256625 100644
--- a/gcc/java/jcf-write.c
+++ b/gcc/java/jcf-write.c
@@ -1720,6 +1720,7 @@ generate_bytecode_insns (exp, target, state)
else
{
push_int_const (sw_state.cases->offset, state);
+ NOTE_PUSH (1);
emit_if (sw_state.cases->label,
OPCODE_if_icmpeq, OPCODE_if_icmpne, state);
}