hotspot/src/jdk.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMemoryAccessProviderImpl.java
changeset 38678 06d6c40ce33b
parent 38226 dfaf4a09b643
child 38686 6c51f29cbc5d
equal deleted inserted replaced
38677:1c1598b02874 38678:06d6c40ce33b
   230         assert (base instanceof HotSpotObjectConstantImpl);
   230         assert (base instanceof HotSpotObjectConstantImpl);
   231         Object baseObject = ((HotSpotObjectConstantImpl) base).object();
   231         Object baseObject = ((HotSpotObjectConstantImpl) base).object();
   232         HotSpotResolvedJavaMethodImpl method = runtime.getCompilerToVM().getResolvedJavaMethod(baseObject, displacement);
   232         HotSpotResolvedJavaMethodImpl method = runtime.getCompilerToVM().getResolvedJavaMethod(baseObject, displacement);
   233         return HotSpotMetaspaceConstantImpl.forMetaspaceObject(method, false);
   233         return HotSpotMetaspaceConstantImpl.forMetaspaceObject(method, false);
   234     }
   234     }
   235 
       
   236     @Override
       
   237     public Constant readSymbolConstant(Constant base, long displacement) {
       
   238         int bits = runtime.getConfig().symbolPointerSize * Byte.SIZE;
       
   239         long pointer = readRawValue(base, displacement, bits);
       
   240         if (pointer == 0) {
       
   241             return JavaConstant.NULL_POINTER;
       
   242         } else {
       
   243             String symbol = runtime.getCompilerToVM().getSymbol(pointer);
       
   244             return new HotSpotSymbol(symbol, pointer).asConstant();
       
   245         }
       
   246     }
       
   247 }
   235 }