changeset 22027:187b34bd0151

HotSpotConstantPool: only try to resolve invokeHandle for invoke opcodes
author Gilles Duboscq <gilles.m.duboscq@oracle.com>
date Fri, 19 Jun 2015 12:48:12 +0200
parents ab879bff09ab
children 9015ec60f729
files jvmci/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotConstantPool.java
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/jvmci/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotConstantPool.java	Fri Jun 19 12:35:38 2015 +0200
+++ b/jvmci/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotConstantPool.java	Fri Jun 19 12:48:12 2015 +0200
@@ -620,7 +620,9 @@
         int methodRefCacheIndex = -1;
         switch (tag) {
             case MethodRef:
-                methodRefCacheIndex = toConstantPoolIndex(cpi, opcode);
+                if (Bytecodes.isInvoke(opcode)) {
+                    methodRefCacheIndex = toConstantPoolIndex(cpi, opcode);
+                }
                 // fall through
             case Fieldref:
             case InterfaceMethodref: