Mercurial > hg > graal-jvmci-8
changeset 22263:b5ed7b253194
Use KlassPointer stamp when reading Klass::_super
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Mon, 20 Jul 2015 19:34:43 -0700 |
parents | 97ee41c80b1d |
children | e743cde3ff3a |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompilerToVMImplSubstitutions.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotClassSubstitutions.java |
diffstat | 2 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompilerToVMImplSubstitutions.java Mon Jul 20 11:08:40 2015 -0700 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompilerToVMImplSubstitutions.java Mon Jul 20 19:34:43 2015 -0700 @@ -25,6 +25,7 @@ import jdk.internal.jvmci.hotspot.*; import com.oracle.graal.api.replacements.*; +import com.oracle.graal.hotspot.word.*; import com.oracle.graal.word.*; /** @@ -35,6 +36,6 @@ @MethodSubstitution(isStatic = false) public static Class<?> getJavaMirror(@SuppressWarnings("unused") CompilerToVMImpl impl, long metaspaceklass) { - return HotSpotClassSubstitutions.readJavaMirror(Word.unsigned(metaspaceklass)); + return HotSpotClassSubstitutions.readJavaMirror(KlassPointer.fromWord(Word.unsigned(metaspaceklass))); } }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotClassSubstitutions.java Mon Jul 20 11:08:40 2015 -0700 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotClassSubstitutions.java Mon Jul 20 19:34:43 2015 -0700 @@ -28,7 +28,6 @@ import com.oracle.graal.hotspot.word.*; import com.oracle.graal.nodes.*; -import com.oracle.graal.word.*; // JaCoCo Exclude @@ -81,8 +80,8 @@ if (klassIsArray(klass)) { return Object.class; } else { - Word superKlass = klass.readWord(klassSuperKlassOffset(), KLASS_SUPER_KLASS_LOCATION); - if (superKlass.equal(0)) { + KlassPointer superKlass = klass.readKlassPointer(klassSuperKlassOffset(), KLASS_SUPER_KLASS_LOCATION); + if (superKlass.isNull()) { return null; } else { return readJavaMirror(superKlass); @@ -95,7 +94,7 @@ return null; } - public static Class<?> readJavaMirror(Word klass) { + public static Class<?> readJavaMirror(KlassPointer klass) { return PiNode.asNonNullClass(klass.readObject(classMirrorOffset(), CLASS_MIRROR_LOCATION)); }