changeset 22100:e039ecc24fea

Remove cache from HotSpotConstantPool class.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Fri, 26 Jun 2015 15:24:26 +0200
parents 10b08d53b060
children e2793adeaa43
files jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java
diffstat 1 files changed, 0 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java	Fri Jun 26 14:05:38 2015 +0200
+++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java	Fri Jun 26 15:24:26 2015 +0200
@@ -177,12 +177,10 @@
      * Reference to the C++ ConstantPool object.
      */
     private final long metaspaceConstantPool;
-    private final Object[] cache;
     private volatile LookupTypeCacheElement lastLookupType;
 
     public HotSpotConstantPool(long metaspaceConstantPool) {
         this.metaspaceConstantPool = metaspaceConstantPool;
-        cache = new Object[length()];
     }
 
     /**
@@ -514,19 +512,10 @@
 
     @Override
     public JavaMethod lookupMethod(int cpi, int opcode) {
-        if (opcode != Bytecodes.INVOKEDYNAMIC) {
-            Object result = cache[cpi];
-            if (result != null) {
-                return (ResolvedJavaMethod) result;
-            }
-        }
         final int index = toConstantPoolIndex(cpi, opcode);
         final long metaspaceMethod = runtime().getCompilerToVM().lookupMethodInPool(metaspaceConstantPool, index, (byte) opcode);
         if (metaspaceMethod != 0L) {
             HotSpotResolvedJavaMethod result = HotSpotResolvedJavaMethodImpl.fromMetaspace(metaspaceMethod);
-            if (opcode != Bytecodes.INVOKEDYNAMIC) {
-                cache[cpi] = result;
-            }
             return result;
         } else {
             // Get the method's name and signature.
@@ -561,10 +550,6 @@
 
     @Override
     public JavaField lookupField(int cpi, int opcode) {
-        Object resolvedJavaField = cache[cpi];
-        if (resolvedJavaField != null) {
-            return (ResolvedJavaField) resolvedJavaField;
-        }
         final int index = toConstantPoolIndex(cpi, opcode);
         final int nameAndTypeIndex = getNameAndTypeRefIndexAt(index);
         final int nameIndex = getNameRefIndexAt(nameAndTypeIndex);
@@ -592,9 +577,6 @@
             final int flags = (int) info[0];
             final long offset = info[1];
             HotSpotResolvedJavaField result = resolvedHolder.createField(name, type, offset, flags);
-            if (type instanceof ResolvedJavaType) {
-                cache[cpi] = result;
-            }
             return result;
         } else {
             return new HotSpotUnresolvedField(holder, name, type);