Mercurial > hg > graal-jvmci-8
changeset 18290:e7d219e9d01f
removed HotSpotObjectConstantImpl.asObject()
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/HSAILHotSpotAssembler.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/HSAILHotSpotAssembler.java Thu Nov 06 20:13:08 2014 +0100 @@ -28,6 +28,7 @@ import com.oracle.graal.api.code.*; import com.oracle.graal.api.meta.*; import com.oracle.graal.asm.hsail.*; +import com.oracle.graal.compiler.common.*; import com.oracle.graal.hotspot.meta.*; /** @@ -39,6 +40,22 @@ super(target); } + // This means the HSAIL backend cannot (currently) be executed + // in remote/replay compilation mode. + private static Field objectField; + + private static Object getObject(JavaConstant src) { + try { + if (objectField == null) { + objectField = HotSpotObjectConstantImpl.class.getDeclaredField("object"); + } + return objectField.get(src); + } catch (Exception e) { + throw new GraalInternalError(e); + } + + } + @Override public final void mov(Register a, JavaConstant src) { String regName = "$d" + a.encoding(); @@ -46,7 +63,8 @@ if (src.isNull()) { emitString("mov_b64 " + regName + ", 0x0; // null object"); } else { - Object obj = HotSpotObjectConstantImpl.asObject(src); + assert src instanceof HotSpotObjectConstantImpl; + Object obj = getObject(src); // Get a JNI reference handle to the object. long refHandle = OkraUtil.getRefHandle(obj); // Get the clasname of the object for emitting a comment.
--- a/graal/com.oracle.graal.hotspot.server/src/com/oracle/graal/hotspot/server/ReplacingStreams.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot.server/src/com/oracle/graal/hotspot/server/ReplacingStreams.java Thu Nov 06 20:13:08 2014 +0100 @@ -30,7 +30,6 @@ import com.oracle.graal.api.meta.*; import com.oracle.graal.hotspot.logging.*; -import com.oracle.graal.hotspot.meta.*; public class ReplacingStreams { @@ -147,7 +146,7 @@ } /** - * Replaces certain cir objects that cannot easily be made Serializable. + * Replaces certain objects that cannot easily be made Serializable. */ public class ReplacingOutputStream extends ObjectOutputStream { @@ -169,29 +168,9 @@ return createRemoteCallPlaceholder(obj); } - // is the object a constant of object type? - if (obj.getClass() == JavaConstant.class) { - JavaConstant constant = (JavaConstant) obj; - if (constant.getKind() != Kind.Object) { - return obj; - } - Object contents = HotSpotObjectConstantImpl.asObject(constant); - if (contents == null) { - return obj; - } - // don't replace if the object already is a placeholder - if (contents instanceof Placeholder || contents instanceof Long) { - return obj; - } - placeholder = objectMap.get(contents); - if (placeholder != null) { - return HotSpotObjectConstantImpl.forObject(placeholder); - } - if (contents instanceof Remote) { - return HotSpotObjectConstantImpl.forObject(createRemoteCallPlaceholder(contents)); - } - return HotSpotObjectConstantImpl.forObject(createDummyPlaceholder(contents)); - } + // Remote object constants must implement Remote + assert !(obj instanceof JavaConstant) || ((JavaConstant) obj).getKind() != Kind.Object; + return obj; } } @@ -203,10 +182,4 @@ objectList.add(obj); return new NewRemoteCallPlaceholder(ProxyUtil.getAllInterfaces(obj.getClass())); } - - public Object createDummyPlaceholder(Object obj) { - objectMap.put(obj, new Placeholder(objectList.size())); - objectList.add(obj); - return new NewDummyPlaceholder(); - } }
--- a/graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/test/AheadOfTimeCompilationTest.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/test/AheadOfTimeCompilationTest.java Thu Nov 06 20:13:08 2014 +0100 @@ -104,9 +104,9 @@ NodeIterable<ConstantNode> filter = getConstantNodes(result); assertDeepEquals(1, filter.count()); - Object mirror = HotSpotObjectConstantImpl.asObject(filter.first().asJavaConstant()); - assertDeepEquals(Class.class, mirror.getClass()); - assertDeepEquals(AheadOfTimeCompilationTest.class, mirror); + HotSpotObjectConstantImpl c = (HotSpotObjectConstantImpl) filter.first().asJavaConstant(); + Assert.assertEquals(Class.class, c.getObjectClass()); + Assert.assertTrue(c.isEqualTo(AheadOfTimeCompilationTest.class)); assertDeepEquals(0, result.getNodes(FloatingReadNode.class).count()); assertDeepEquals(0, result.getNodes().filter(ReadNode.class).count()); @@ -132,9 +132,9 @@ StructuredGraph result = compile("getPrimitiveClassObject", false); NodeIterable<ConstantNode> filter = getConstantNodes(result); assertDeepEquals(1, filter.count()); - Object mirror = HotSpotObjectConstantImpl.asObject(filter.first().asJavaConstant()); - assertDeepEquals(Class.class, mirror.getClass()); - assertDeepEquals(Integer.TYPE, mirror); + HotSpotObjectConstantImpl c = (HotSpotObjectConstantImpl) filter.first().asJavaConstant(); + Assert.assertEquals(Class.class, c.getObjectClass()); + Assert.assertTrue(c.isEqualTo(Integer.TYPE)); assertDeepEquals(0, result.getNodes(FloatingReadNode.class).count()); assertDeepEquals(0, result.getNodes().filter(ReadNode.class).count()); @@ -160,9 +160,9 @@ NodeIterable<ConstantNode> filter = getConstantNodes(result); assertDeepEquals(1, filter.count()); - Object mirror = HotSpotObjectConstantImpl.asObject(filter.first().asJavaConstant()); - assertDeepEquals(String.class, mirror.getClass()); - assertDeepEquals("test string", mirror); + HotSpotObjectConstantImpl c = (HotSpotObjectConstantImpl) filter.first().asJavaConstant(); + Assert.assertEquals(String.class, c.getObjectClass()); + Assert.assertTrue(c.isEqualTo("test string")); assertDeepEquals(0, result.getNodes(FloatingReadNode.class).count()); assertDeepEquals(0, result.getNodes().filter(ReadNode.class).count()); @@ -193,7 +193,9 @@ assertDeepEquals(1, getConstantNodes(result).count()); ConstantNode constant = getConstantNodes(result).first(); assertDeepEquals(Kind.Object, constant.getKind()); - assertDeepEquals(Boolean.TRUE, HotSpotObjectConstantImpl.asObject(constant.asJavaConstant())); + + HotSpotObjectConstantImpl c = (HotSpotObjectConstantImpl) constant.asJavaConstant(); + Assert.assertTrue(c.isEqualTo(Boolean.TRUE)); } private StructuredGraph compile(String test, boolean compileAOT) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotConstantReflectionProvider.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotConstantReflectionProvider.java Thu Nov 06 20:13:08 2014 +0100 @@ -53,7 +53,7 @@ return null; } - Object arrayObject = HotSpotObjectConstantImpl.asObject(array); + Object arrayObject = ((HotSpotObjectConstantImpl) array).object(); if (!arrayObject.getClass().isArray()) { return null; } @@ -65,7 +65,7 @@ Object base; long displacement; if (baseConstant.getKind() == Kind.Object) { - base = HotSpotObjectConstantImpl.asObject(baseConstant); + base = ((HotSpotObjectConstantImpl) baseConstant).object(); displacement = initialDisplacement; if (base == null) { return null; @@ -132,7 +132,7 @@ Object base; long displacement; if (baseConstant.getKind() == Kind.Object) { - base = HotSpotObjectConstantImpl.asObject(baseConstant); + base = ((HotSpotObjectConstantImpl) baseConstant).object(); displacement = initialDisplacement; if (base == null) { return null; @@ -197,7 +197,7 @@ if (array.getKind() != Kind.Object || array.isNull()) { return null; } - Object a = HotSpotObjectConstantImpl.asObject(array); + Object a = ((HotSpotObjectConstantImpl) array).object(); if (index < 0 || index >= Array.getLength(a)) { return null; @@ -223,13 +223,13 @@ if (!source.getKind().isObject()) { return null; } - return JavaConstant.forBoxedPrimitive(HotSpotObjectConstantImpl.asObject(source)); + return JavaConstant.forBoxedPrimitive(((HotSpotObjectConstantImpl) source).object()); } @Override public ResolvedJavaType asJavaType(JavaConstant constant) { if (constant instanceof HotSpotObjectConstant) { - Object obj = HotSpotObjectConstantImpl.asObject(constant); + Object obj = ((HotSpotObjectConstantImpl) constant).object(); if (obj instanceof Class) { return runtime.getHostProviders().getMetaAccess().lookupJavaType((Class<?>) obj); }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMetaAccessProvider.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMetaAccessProvider.java Thu Nov 06 20:13:08 2014 +0100 @@ -62,7 +62,7 @@ if (constant.isNull() || !(constant instanceof HotSpotObjectConstant)) { return null; } - Object o = HotSpotObjectConstantImpl.asObject(constant); + Object o = ((HotSpotObjectConstantImpl) constant).object(); return fromObjectClass(o.getClass()); } @@ -308,7 +308,7 @@ } else { if (lookupJavaType.isArray()) { // TODO(tw): Add compressed pointer support. - int length = Array.getLength(HotSpotObjectConstantImpl.asObject(constant)); + int length = Array.getLength(((HotSpotObjectConstantImpl) constant).object()); ResolvedJavaType elementType = lookupJavaType.getComponentType(); Kind elementKind = elementType.getKind(); final int headerSize = HotSpotGraalRuntime.getArrayBaseOffset(elementKind);
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotObjectConstantImpl.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotObjectConstantImpl.java Thu Nov 06 20:13:08 2014 +0100 @@ -55,14 +55,6 @@ } } - public static Object asObject(Constant constant) { - if (JavaConstant.isNull(constant)) { - return null; - } else { - return ((HotSpotObjectConstantImpl) constant).object; - } - } - public static Object asBoxedValue(Constant constant) { if (JavaConstant.isNull(constant)) { return null; @@ -83,6 +75,28 @@ assert object != null; } + /** + * Package-private accessor for the object represented by this constant. + */ + Object object() { + return object; + } + + /** + * Determines if the object represented by this constant is {@link Object#equals(Object) equal} + * to a given object. + */ + public boolean isEqualTo(Object obj) { + return object.equals(obj); + } + + /** + * Gets the class of the object represented by this constant. + */ + public Class<?> getObjectClass() { + return object.getClass(); + } + public boolean isCompressed() { return compressed; }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaFieldImpl.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaFieldImpl.java Thu Nov 06 20:13:08 2014 +0100 @@ -210,7 +210,7 @@ * have a non-default value. */ assert !isStatic(); - Object object = HotSpotObjectConstantImpl.asObject(receiver); + Object object = ((HotSpotObjectConstantImpl) receiver).object(); // Canonicalization may attempt to process an unsafe read before // processing a guard (e.g. a null check or a type check) for this read @@ -268,7 +268,7 @@ return null; } else { assert !isStatic(); - assert receiver.isNonNull() && isInObject(HotSpotObjectConstantImpl.asObject(receiver)); + assert receiver.isNonNull() && isInObject(((HotSpotObjectConstantImpl) receiver).object()); return runtime().getHostProviders().getConstantReflection().readUnsafeConstant(getKind(), receiver, offset); } }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethodImpl.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethodImpl.java Thu Nov 06 20:13:08 2014 +0100 @@ -711,7 +711,7 @@ for (int i = 0; i < arguments.length; i++) { objArguments[i] = HotSpotObjectConstantImpl.asBoxedValue(arguments[i]); } - Object objReceiver = receiver != null ? HotSpotObjectConstantImpl.asObject(receiver) : null; + Object objReceiver = receiver != null ? ((HotSpotObjectConstantImpl) receiver).object() : null; try { Object objResult = javaMethod.invoke(objReceiver, objArguments);
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectTypeImpl.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectTypeImpl.java Thu Nov 06 20:13:08 2014 +0100 @@ -343,7 +343,7 @@ @Override public boolean isInstance(JavaConstant obj) { if (obj.getKind() == Kind.Object && !obj.isNull()) { - return mirror().isInstance(HotSpotObjectConstantImpl.asObject(obj)); + return mirror().isInstance(((HotSpotObjectConstantImpl) obj).object()); } return false; }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSnippetReflectionProvider.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSnippetReflectionProvider.java Thu Nov 06 20:13:08 2014 +0100 @@ -34,7 +34,7 @@ @Override public Object asObject(JavaConstant constant) { - return HotSpotObjectConstantImpl.asObject(constant); + return ((HotSpotObjectConstantImpl) constant).object(); } @Override
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetModifiersNode.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetModifiersNode.java Thu Nov 06 20:13:08 2014 +0100 @@ -22,9 +22,9 @@ */ package com.oracle.graal.hotspot.nodes; +import com.oracle.graal.api.meta.*; import com.oracle.graal.graph.*; import com.oracle.graal.graph.spi.*; -import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.hotspot.replacements.*; import com.oracle.graal.nodeinfo.*; import com.oracle.graal.nodes.*; @@ -54,9 +54,10 @@ public Node canonical(CanonicalizerTool tool) { ValueNode javaClass = getJavaClass(); if (javaClass.isConstant()) { - Class<?> c = (Class<?>) HotSpotObjectConstantImpl.asObject(javaClass.asJavaConstant()); - if (c != null) { - return ConstantNode.forInt(c.getModifiers()); + ConstantReflectionProvider constantReflection = tool.getConstantReflection(); + ResolvedJavaType type = constantReflection.asJavaType(javaClass.asJavaConstant()); + if (type != null) { + return ConstantNode.forInt(type.getModifiers()); } } return this;
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsArrayNode.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsArrayNode.java Thu Nov 06 20:13:08 2014 +0100 @@ -22,9 +22,9 @@ */ package com.oracle.graal.hotspot.nodes; +import com.oracle.graal.api.meta.*; import com.oracle.graal.graph.*; import com.oracle.graal.graph.spi.*; -import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.hotspot.replacements.*; import com.oracle.graal.nodeinfo.*; import com.oracle.graal.nodes.*; @@ -54,9 +54,10 @@ public Node canonical(CanonicalizerTool tool) { ValueNode javaClass = getJavaClass(); if (javaClass.isConstant()) { - Class<?> c = (Class<?>) HotSpotObjectConstantImpl.asObject(javaClass.asJavaConstant()); - if (c != null) { - return ConstantNode.forBoolean(c.isArray()); + ConstantReflectionProvider constantReflection = tool.getConstantReflection(); + ResolvedJavaType type = constantReflection.asJavaType(javaClass.asJavaConstant()); + if (type != null) { + return ConstantNode.forBoolean(type.isArray()); } } return this;
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInterfaceNode.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInterfaceNode.java Thu Nov 06 20:13:08 2014 +0100 @@ -22,9 +22,9 @@ */ package com.oracle.graal.hotspot.nodes; +import com.oracle.graal.api.meta.*; import com.oracle.graal.graph.*; import com.oracle.graal.graph.spi.*; -import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.hotspot.replacements.*; import com.oracle.graal.nodeinfo.*; import com.oracle.graal.nodes.*; @@ -54,9 +54,10 @@ public Node canonical(CanonicalizerTool tool) { ValueNode javaClass = getJavaClass(); if (javaClass.isConstant()) { - Class<?> c = (Class<?>) HotSpotObjectConstantImpl.asObject(javaClass.asJavaConstant()); - if (c != null) { - return ConstantNode.forBoolean(c.isInterface()); + ConstantReflectionProvider constantReflection = tool.getConstantReflection(); + ResolvedJavaType type = constantReflection.asJavaType(javaClass.asJavaConstant()); + if (type != null) { + return ConstantNode.forBoolean(type.isInterface()); } } return this;
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsPrimitiveNode.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsPrimitiveNode.java Thu Nov 06 20:13:08 2014 +0100 @@ -22,9 +22,9 @@ */ package com.oracle.graal.hotspot.nodes; +import com.oracle.graal.api.meta.*; import com.oracle.graal.graph.*; import com.oracle.graal.graph.spi.*; -import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.hotspot.replacements.*; import com.oracle.graal.nodeinfo.*; import com.oracle.graal.nodes.*; @@ -54,9 +54,10 @@ public Node canonical(CanonicalizerTool tool) { ValueNode javaClass = getJavaClass(); if (javaClass.isConstant()) { - Class<?> c = (Class<?>) HotSpotObjectConstantImpl.asObject(javaClass.asJavaConstant()); - if (c != null) { - return ConstantNode.forBoolean(c.isPrimitive()); + ConstantReflectionProvider constantReflection = tool.getConstantReflection(); + ResolvedJavaType type = constantReflection.asJavaType(javaClass.asJavaConstant()); + if (type != null) { + return ConstantNode.forBoolean(type.isPrimitive()); } } return this;
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/LoadJavaMirrorWithKlassPhase.java Thu Nov 06 14:52:46 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/LoadJavaMirrorWithKlassPhase.java Thu Nov 06 20:13:08 2014 +0100 @@ -60,44 +60,48 @@ } private ValueNode getClassConstantReplacement(StructuredGraph graph, PhaseContext context, JavaConstant constant) { - if (constant instanceof HotSpotObjectConstant && HotSpotObjectConstantImpl.asObject(constant) instanceof Class<?>) { - MetaAccessProvider metaAccess = context.getMetaAccess(); - ResolvedJavaType type = metaAccess.lookupJavaType((Class<?>) HotSpotObjectConstantImpl.asObject(constant)); - JavaConstant klass; - LocationNode location; - if (type instanceof HotSpotResolvedObjectType) { - location = ConstantLocationNode.create(CLASS_MIRROR_LOCATION, Kind.Object, classMirrorOffset, graph); - klass = ((HotSpotResolvedObjectType) type).klass(); - } else { - /* - * Primitive classes are more difficult since they don't have a corresponding Klass* - * so get them from Class.TYPE for the java box type. - */ - HotSpotResolvedPrimitiveType primitive = (HotSpotResolvedPrimitiveType) type; - ResolvedJavaType boxingClass = metaAccess.lookupJavaType(primitive.getKind().toBoxedJavaClass()); - klass = ((HotSpotResolvedObjectType) boxingClass).klass(); - HotSpotResolvedJavaField[] a = (HotSpotResolvedJavaField[]) boxingClass.getStaticFields(); - HotSpotResolvedJavaField typeField = null; - for (HotSpotResolvedJavaField f : a) { - if (f.getName().equals("TYPE")) { - typeField = f; - break; + if (constant instanceof HotSpotObjectConstant) { + ConstantReflectionProvider constantReflection = context.getConstantReflection(); + ResolvedJavaType c = constantReflection.asJavaType(constant); + if (c != null) { + MetaAccessProvider metaAccess = context.getMetaAccess(); + ResolvedJavaType type = c; + JavaConstant klass; + LocationNode location; + if (type instanceof HotSpotResolvedObjectType) { + location = ConstantLocationNode.create(CLASS_MIRROR_LOCATION, Kind.Object, classMirrorOffset, graph); + klass = ((HotSpotResolvedObjectType) type).klass(); + } else { + /* + * Primitive classes are more difficult since they don't have a corresponding + * Klass* so get them from Class.TYPE for the java box type. + */ + HotSpotResolvedPrimitiveType primitive = (HotSpotResolvedPrimitiveType) type; + ResolvedJavaType boxingClass = metaAccess.lookupJavaType(primitive.getKind().toBoxedJavaClass()); + klass = ((HotSpotResolvedObjectType) boxingClass).klass(); + HotSpotResolvedJavaField[] a = (HotSpotResolvedJavaField[]) boxingClass.getStaticFields(); + HotSpotResolvedJavaField typeField = null; + for (HotSpotResolvedJavaField f : a) { + if (f.getName().equals("TYPE")) { + typeField = f; + break; + } } - } - if (typeField == null) { - throw new GraalInternalError("Can't find TYPE field in class"); + if (typeField == null) { + throw new GraalInternalError("Can't find TYPE field in class"); + } + location = ConstantLocationNode.create(FINAL_LOCATION, Kind.Object, typeField.offset(), graph); } - location = ConstantLocationNode.create(FINAL_LOCATION, Kind.Object, typeField.offset(), graph); - } - ConstantNode klassNode = ConstantNode.forConstant(klass, metaAccess, graph); + ConstantNode klassNode = ConstantNode.forConstant(klass, metaAccess, graph); - Stamp stamp = StampFactory.exactNonNull(metaAccess.lookupJavaType(Class.class)); - FloatingReadNode freadNode = graph.unique(FloatingReadNode.create(klassNode, location, null, stamp)); + Stamp stamp = StampFactory.exactNonNull(metaAccess.lookupJavaType(Class.class)); + FloatingReadNode freadNode = graph.unique(FloatingReadNode.create(klassNode, location, null, stamp)); - if (((HotSpotObjectConstant) constant).isCompressed()) { - return CompressionNode.compress(freadNode, oopEncoding); - } else { - return freadNode; + if (((HotSpotObjectConstant) constant).isCompressed()) { + return CompressionNode.compress(freadNode, oopEncoding); + } else { + return freadNode; + } } } return null;