aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
authorAnthony Green <green@cygnus.com>2000-01-10 01:26:27 +0000
committerAnthony Green <green@gcc.gnu.org>2000-01-10 01:26:27 +0000
commit2d54440c964279e177c6971bf4d3a80c2a25a81c (patch)
treed9f5900106b7b3a662a7757d918b9f7effb5411c /gcc/java
parentb11f64301ac5a915a3803c6d6d4fa33b6733d187 (diff)
downloadgcc-2d54440c964279e177c6971bf4d3a80c2a25a81c.zip
gcc-2d54440c964279e177c6971bf4d3a80c2a25a81c.tar.gz
gcc-2d54440c964279e177c6971bf4d3a80c2a25a81c.tar.bz2
jcf-write.c (generate_bytecode_insns): Emit invokeinterface bytecodes in the correct order.
* jcf-write.c (generate_bytecode_insns): Emit invokeinterface bytecodes in the correct order. From-SVN: r31301
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog5
-rw-r--r--gcc/java/jcf-write.c10
2 files changed, 10 insertions, 5 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 0b2337d..ddb7d56 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2000-01-09 Anthony Green <green@cygnus.com>
+
+ * jcf-write.c (generate_bytecode_insns): Emit invokeinterface
+ bytecodes in the correct order.
+
2000-01-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (jcf-dump, gcjh): Move ../errors.o before $(LIBS).
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c
index 98436f2..0ddfa9e 100644
--- a/gcc/java/jcf-write.c
+++ b/gcc/java/jcf-write.c
@@ -2509,6 +2509,11 @@ generate_bytecode_insns (exp, target, state)
else
OP1 (OPCODE_invokevirtual);
OP2 (index);
+ if (interface)
+ {
+ OP1 (nargs);
+ OP1 (0);
+ }
f = TREE_TYPE (TREE_TYPE (f));
if (TREE_CODE (f) != VOID_TYPE)
{
@@ -2518,11 +2523,6 @@ generate_bytecode_insns (exp, target, state)
else
NOTE_PUSH (size);
}
- if (interface)
- {
- OP1 (nargs);
- OP1 (0);
- }
break;
}
}