# HG changeset patch # User Roland Schatz # Date 1442935733 -7200 # Node ID ed53e370f04cfc356f3eb77774361eb9e47195d7 # Parent 99b7154e88c7342b9975055293017ba475f395e6 Make implementation classes package private. diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotConstantPool.java Tue Sep 22 17:28:53 2015 +0200 @@ -42,7 +42,7 @@ /** * Implementation of {@link ConstantPool} for HotSpot. */ -public final class HotSpotConstantPool implements ConstantPool, HotSpotProxified, MetaspaceWrapperObject { +final class HotSpotConstantPool implements ConstantPool, HotSpotProxified, MetaspaceWrapperObject { /** * Subset of JVM bytecode opcodes used by {@link HotSpotConstantPool}. @@ -265,7 +265,7 @@ return ~i; } - public long getMetaspaceConstantPool() { + long getMetaspaceConstantPool() { return metaspaceConstantPool; } diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMemoryAccessProviderImpl.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMemoryAccessProviderImpl.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMemoryAccessProviderImpl.java Tue Sep 22 17:28:53 2015 +0200 @@ -34,7 +34,7 @@ /** * HotSpot implementation of {@link MemoryAccessProvider}. */ -public class HotSpotMemoryAccessProviderImpl implements HotSpotMemoryAccessProvider, HotSpotProxified { +class HotSpotMemoryAccessProviderImpl implements HotSpotMemoryAccessProvider, HotSpotProxified { protected final HotSpotJVMCIRuntimeProvider runtime; diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMetaspaceConstantImpl.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMetaspaceConstantImpl.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMetaspaceConstantImpl.java Tue Sep 22 17:28:53 2015 +0200 @@ -27,7 +27,7 @@ import jdk.internal.jvmci.meta.Constant; import jdk.internal.jvmci.meta.VMConstant; -public final class HotSpotMetaspaceConstantImpl implements HotSpotMetaspaceConstant, VMConstant, HotSpotProxified { +final class HotSpotMetaspaceConstantImpl implements HotSpotMetaspaceConstant, VMConstant, HotSpotProxified { static HotSpotMetaspaceConstantImpl forMetaspaceObject(MetaspaceWrapperObject metaspaceObject, boolean compressed) { return new HotSpotMetaspaceConstantImpl(metaspaceObject, compressed); diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethod.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethod.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethod.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -32,7 +32,7 @@ import jdk.internal.jvmci.meta.JavaMethod; import jdk.internal.jvmci.meta.ResolvedJavaMethod; -public abstract class HotSpotMethod implements JavaMethod, Formattable /* , JavaMethodContex */{ +abstract class HotSpotMethod implements JavaMethod, Formattable { public static String applyFormattingFlagsAndWidth(String s, int flags, int width) { if (flags == 0 && width < 0) { diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethodUnresolved.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethodUnresolved.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotMethodUnresolved.java Tue Sep 22 17:28:53 2015 +0200 @@ -29,7 +29,7 @@ /** * Implementation of {@link JavaMethod} for unresolved HotSpot methods. */ -public final class HotSpotMethodUnresolved extends HotSpotMethod { +final class HotSpotMethodUnresolved extends HotSpotMethod { private final Signature signature; protected JavaType holder; diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaFieldImpl.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaFieldImpl.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaFieldImpl.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -43,7 +43,7 @@ /** * Represents a field in a HotSpot type. */ -public class HotSpotResolvedJavaFieldImpl implements HotSpotResolvedJavaField, HotSpotProxified { +class HotSpotResolvedJavaFieldImpl implements HotSpotResolvedJavaField, HotSpotProxified { static class Options { //@formatter:off @@ -99,7 +99,7 @@ } } - public HotSpotResolvedJavaFieldImpl(HotSpotResolvedObjectTypeImpl holder, String name, JavaType type, long offset, int modifiers) { + HotSpotResolvedJavaFieldImpl(HotSpotResolvedObjectTypeImpl holder, String name, JavaType type, long offset, int modifiers) { this.holder = holder; this.name = name; this.type = type; diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethod.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethod.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethod.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -27,12 +27,22 @@ import jdk.internal.jvmci.meta.JavaMethod; import jdk.internal.jvmci.meta.ResolvedJavaMethod; import jdk.internal.jvmci.meta.ResolvedJavaType; +import jdk.internal.jvmci.options.Option; +import jdk.internal.jvmci.options.OptionType; +import jdk.internal.jvmci.options.OptionValue; /** * Implementation of {@link JavaMethod} for resolved HotSpot methods. */ public interface HotSpotResolvedJavaMethod extends ResolvedJavaMethod { + public static class Options { + // @formatter:off + @Option(help = "", type = OptionType.Debug) + public static final OptionValue UseProfilingInformation = new OptionValue<>(true); + // @formatter:on + } + /** * Returns true if this method has a {@code CallerSensitive} annotation. * diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java Tue Sep 22 17:28:53 2015 +0200 @@ -24,7 +24,7 @@ import static jdk.internal.jvmci.hotspot.CompilerToVM.compilerToVM; import static jdk.internal.jvmci.hotspot.HotSpotJVMCIRuntime.runtime; -import static jdk.internal.jvmci.hotspot.HotSpotResolvedJavaMethodImpl.Options.UseProfilingInformation; +import static jdk.internal.jvmci.hotspot.HotSpotResolvedJavaMethod.Options.UseProfilingInformation; import static jdk.internal.jvmci.hotspot.HotSpotVMConfig.config; import static jdk.internal.jvmci.hotspot.UnsafeAccess.UNSAFE; @@ -59,21 +59,11 @@ import jdk.internal.jvmci.meta.Signature; import jdk.internal.jvmci.meta.SpeculationLog; import jdk.internal.jvmci.meta.TriState; -import jdk.internal.jvmci.options.Option; -import jdk.internal.jvmci.options.OptionType; -import jdk.internal.jvmci.options.OptionValue; /** * Implementation of {@link JavaMethod} for resolved HotSpot methods. */ -public final class HotSpotResolvedJavaMethodImpl extends HotSpotMethod implements HotSpotResolvedJavaMethod, HotSpotProxified, MetaspaceWrapperObject { - - public static class Options { - // @formatter:off - @Option(help = "", type = OptionType.Debug) - public static final OptionValue UseProfilingInformation = new OptionValue<>(true); - // @formatter:on - } +final class HotSpotResolvedJavaMethodImpl extends HotSpotMethod implements HotSpotResolvedJavaMethod, HotSpotProxified, MetaspaceWrapperObject { /** * Reference to metaspace Method object. @@ -205,14 +195,10 @@ return HotSpotMetaspaceConstantImpl.forMetaspaceObject(this, false); } - public long getMetaspaceMethod() { + public long getMetaspacePointer() { return metaspaceMethod; } - public long getMetaspacePointer() { - return getMetaspaceMethod(); - } - @Override public Constant getEncoding() { return getMetaspaceMethodConstant(); diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaType.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaType.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedJavaType.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -26,7 +26,7 @@ public abstract class HotSpotResolvedJavaType extends HotSpotJavaType implements ResolvedJavaType { - public HotSpotResolvedJavaType(String name) { + HotSpotResolvedJavaType(String name) { super(name); } diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectType.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectType.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectType.java Tue Sep 22 17:28:53 2015 +0200 @@ -37,6 +37,15 @@ */ public interface HotSpotResolvedObjectType extends ResolvedJavaType { + /** + * Gets the JVMCI mirror for a {@link Class} object. + * + * @return the {@link HotSpotResolvedJavaType} corresponding to {@code javaClass} + */ + static HotSpotResolvedObjectType fromObjectClass(Class javaClass) { + return HotSpotResolvedObjectTypeImpl.fromObjectClass(javaClass); + } + HotSpotResolvedObjectType getArrayClass(); ResolvedJavaType getComponentType(); diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectTypeImpl.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectTypeImpl.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotResolvedObjectTypeImpl.java Tue Sep 22 17:28:53 2015 +0200 @@ -59,7 +59,7 @@ /** * Implementation of {@link JavaType} for resolved non-primitive HotSpot classes. */ -public final class HotSpotResolvedObjectTypeImpl extends HotSpotResolvedJavaType implements HotSpotResolvedObjectType, HotSpotProxified, MetaspaceWrapperObject { +final class HotSpotResolvedObjectTypeImpl extends HotSpotResolvedJavaType implements HotSpotResolvedObjectType, HotSpotProxified, MetaspaceWrapperObject { /** * The Java class this type represents. @@ -78,7 +78,7 @@ * * @return the {@link HotSpotResolvedJavaType} corresponding to {@code javaClass} */ - public static HotSpotResolvedObjectTypeImpl fromObjectClass(Class javaClass) { + static HotSpotResolvedObjectTypeImpl fromObjectClass(Class javaClass) { return (HotSpotResolvedObjectTypeImpl) runtime().fromClass(javaClass); } @@ -128,7 +128,7 @@ /** * Gets the metaspace Klass for this type. */ - public long getMetaspaceKlass() { + long getMetaspaceKlass() { if (HotSpotJVMCIRuntime.getHostWordKind() == JavaKind.Long) { return UNSAFE.getLong(javaClass, (long) config().klassOffset); } diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotSignature.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotSignature.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotSignature.java Tue Sep 22 17:28:53 2015 +0200 @@ -135,7 +135,7 @@ JavaKind kind = JavaKind.fromPrimitiveOrVoidTypeChar(name.charAt(0)); return runtime.getHostJVMCIBackend().getMetaAccess().lookupJavaType(kind.toJavaClass()); } - return new HotSpotUnresolvedJavaType(name, runtime); + return HotSpotUnresolvedJavaType.create(runtime, name); } @Override diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedField.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedField.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedField.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -28,13 +28,13 @@ /** * A implementation of {@link JavaField} for an unresolved field. */ -public class HotSpotUnresolvedField implements JavaField { +class HotSpotUnresolvedField implements JavaField { private final String name; private final JavaType holder; private final JavaType type; - public HotSpotUnresolvedField(JavaType holder, String name, JavaType type) { + HotSpotUnresolvedField(JavaType holder, String name, JavaType type) { this.name = name; this.type = type; this.holder = holder; diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedJavaType.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedJavaType.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotUnresolvedJavaType.java Tue Sep 22 17:28:53 2015 +0200 @@ -29,11 +29,11 @@ /** * Implementation of {@link JavaType} for unresolved HotSpot classes. */ -public class HotSpotUnresolvedJavaType extends HotSpotJavaType { +final class HotSpotUnresolvedJavaType extends HotSpotJavaType { private final HotSpotJVMCIRuntimeProvider runtime; - public HotSpotUnresolvedJavaType(String name, HotSpotJVMCIRuntimeProvider runtime) { + private HotSpotUnresolvedJavaType(String name, HotSpotJVMCIRuntimeProvider runtime) { super(name); assert name.charAt(0) == '[' || name.charAt(name.length() - 1) == ';' : name; this.runtime = runtime; @@ -42,7 +42,7 @@ /** * Creates an unresolved type for a valid {@link JavaType#getName() type name}. */ - public static HotSpotUnresolvedJavaType create(HotSpotJVMCIRuntimeProvider runtime, String name) { + static HotSpotUnresolvedJavaType create(HotSpotJVMCIRuntimeProvider runtime, String name) { return new HotSpotUnresolvedJavaType(name, runtime); } diff -r 99b7154e88c7 -r ed53e370f04c jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotVmSymbols.java --- a/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotVmSymbols.java Tue Sep 22 17:13:02 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.hotspot/src/jdk/internal/jvmci/hotspot/HotSpotVmSymbols.java Tue Sep 22 17:28:53 2015 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -29,7 +29,7 @@ /** * Class to access the C++ {@code vmSymbols} table. */ -public final class HotSpotVmSymbols { +final class HotSpotVmSymbols { /** * Returns the symbol in the {@code vmSymbols} table at position {@code index} as {@link String} @@ -38,7 +38,7 @@ * @param index position in the symbol table * @return the symbol at position id */ - public static String symbolAt(int index) { + static String symbolAt(int index) { HotSpotJVMCIRuntimeProvider runtime = runtime(); HotSpotVMConfig config = runtime.getConfig(); assert config.vmSymbolsFirstSID <= index && index < config.vmSymbolsSIDLimit : "index " + index + " is out of bounds";