Mercurial > hg > graal-jvmci-8
changeset 23671:d995c88d9cd9
Backout f60746f36f3f
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Tue, 07 Jun 2016 17:23:00 -0700 |
parents | 1b4311ab7797 |
children | a6a7657877fe |
files | jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotConstantPool.java jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIMetaAccessContext.java jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/MetaspaceWrapperObject.java |
diffstat | 4 files changed, 3 insertions(+), 40 deletions(-) [+] |
line wrap: on
line diff
--- a/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotConstantPool.java Tue Jun 07 17:22:34 2016 -0700 +++ b/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotConstantPool.java Tue Jun 07 17:23:00 2016 -0700 @@ -196,9 +196,7 @@ */ @SuppressWarnings("unused") private static HotSpotConstantPool fromMetaspace(long metaspaceConstantPool) { - HotSpotConstantPool cp = new HotSpotConstantPool(metaspaceConstantPool); - runtime().metaAccessContext.add(cp); - return cp; + return new HotSpotConstantPool(metaspaceConstantPool); } private HotSpotConstantPool(long metaspaceConstantPool) {
--- a/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIMetaAccessContext.java Tue Jun 07 17:22:34 2016 -0700 +++ b/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIMetaAccessContext.java Tue Jun 07 17:23:00 2016 -0700 @@ -135,7 +135,6 @@ */ metadataRoots = list.getHead(); } - assert isRegistered(metaspaceObject); } protected ResolvedJavaType createClass(Class<?> javaClass) { @@ -209,7 +208,7 @@ ChunkIterator() { currentChunk = head; currentIndex = -1; - next = findNext(); + findNext(); } Object[] currentChunk; @@ -246,13 +245,4 @@ } } - - synchronized boolean isRegistered(MetaspaceWrapperObject wrapper) { - for (WeakReference<MetaspaceWrapperObject> m : list) { - if (m != null && m.get() == wrapper) { - return true; - } - } - return false; - } }
--- a/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Tue Jun 07 17:22:34 2016 -0700 +++ b/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Tue Jun 07 17:23:00 2016 -0700 @@ -132,20 +132,10 @@ return UNSAFE.getInt(javaClass, (long) config().klassOffset) & 0xFFFFFFFFL; } - @Override public long getMetaspacePointer() { return getMetaspaceKlass(); } - /** - * The Klass* for this object is kept alive by the direct reference to {@link #javaClass} so no - * extra work is required. - */ - @Override - public boolean isRegistered() { - return true; - } - @Override public int getModifiers() { if (isArray()) {
--- a/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/MetaspaceWrapperObject.java Tue Jun 07 17:22:34 2016 -0700 +++ b/jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/MetaspaceWrapperObject.java Tue Jun 07 17:23:00 2016 -0700 @@ -23,8 +23,7 @@ package jdk.vm.ci.hotspot; /** - * A tag interface indicating that this type is a wrapper around a HotSpot metaspace object that - * requires GC interaction to keep alive. + * A tag interface indicating that this type is a wrapper around a HotSpot metaspace object. * * It would preferable if this were the base class containing the pointer but that would require * mixins since most of the wrapper types have complex supertype hierarchies. @@ -32,18 +31,4 @@ interface MetaspaceWrapperObject { long getMetaspacePointer(); - - /** - * Check if this object is properly registered for metadata tracking. All classes which - * implement this interface must be registered with the - * {@link HotSpotJVMCIMetaAccessContext#add} unless they are kept alive through other means. - * Currently the only type which doesn't require explicit registration is - * {@link HotSpotResolvedObjectTypeImpl} since it's kept alive by references to the - * {@link Class}. - * - * @return true if this object is properly registered for meta data tracking. - */ - default boolean isRegistered() { - return HotSpotJVMCIRuntime.runtime().metaAccessContext.isRegistered(this); - } }