# HG changeset patch # User Roland Schatz # Date 1366903578 -7200 # Node ID 2a0a6dfe27be447bbec46edf66532d88e8d8ed1d # Parent 9ee5f3bfa755bc6b0e90fae2fb1a542e412d351b# Parent 90ee20fd2c058e6f98fb1d395dc5c72f8ce6f715 Merge. diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/PTXTestBase.java --- a/graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/PTXTestBase.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/PTXTestBase.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,23 +22,19 @@ */ package com.oracle.graal.compiler.ptx.test; -import com.oracle.graal.api.code.CodeCacheProvider; -import com.oracle.graal.api.code.CompilationResult; -import com.oracle.graal.api.code.SpeculationLog; -import com.oracle.graal.api.code.TargetDescription; -import com.oracle.graal.api.runtime.Graal; -import com.oracle.graal.compiler.GraalCompiler; -import com.oracle.graal.compiler.ptx.PTXBackend; -import com.oracle.graal.compiler.test.GraalCompilerTest; -import com.oracle.graal.debug.Debug; -import com.oracle.graal.java.GraphBuilderConfiguration; -import com.oracle.graal.java.GraphBuilderPhase; -import com.oracle.graal.hotspot.HotSpotGraalRuntime; -import com.oracle.graal.nodes.StructuredGraph; -import com.oracle.graal.phases.OptimisticOptimizations; -import com.oracle.graal.phases.PhasePlan; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + +import com.oracle.graal.api.code.*; +import com.oracle.graal.api.runtime.*; +import com.oracle.graal.compiler.*; +import com.oracle.graal.compiler.ptx.*; +import com.oracle.graal.compiler.test.*; +import com.oracle.graal.debug.*; +import com.oracle.graal.java.*; +import com.oracle.graal.nodes.*; +import com.oracle.graal.phases.*; import com.oracle.graal.phases.PhasePlan.PhasePosition; -import com.oracle.graal.ptx.PTX; +import com.oracle.graal.ptx.*; public abstract class PTXTestBase extends GraalCompilerTest { @@ -48,14 +44,12 @@ TargetDescription target = new TargetDescription(new PTX(), true, 1, 0, true); PTXBackend ptxBackend = new PTXBackend(Graal.getRequiredCapability(CodeCacheProvider.class), target); PhasePlan phasePlan = new PhasePlan(); - GraphBuilderPhase graphBuilderPhase = new GraphBuilderPhase(runtime, GraphBuilderConfiguration.getDefault(), - OptimisticOptimizations.NONE); + GraphBuilderPhase graphBuilderPhase = new GraphBuilderPhase(runtime, GraphBuilderConfiguration.getDefault(), OptimisticOptimizations.NONE); phasePlan.addPhase(PhasePosition.AFTER_PARSING, graphBuilderPhase); phasePlan.addPhase(PhasePosition.AFTER_PARSING, new PTXPhase()); new PTXPhase().apply(graph); - CompilationResult result = GraalCompiler.compileMethod(runtime, HotSpotGraalRuntime.getInstance().getReplacements(), - ptxBackend, target, graph.method(), graph, null, phasePlan, - OptimisticOptimizations.NONE, new SpeculationLog()); + CompilationResult result = GraalCompiler.compileMethod(runtime, graalRuntime().getReplacements(), ptxBackend, target, graph.method(), graph, null, phasePlan, OptimisticOptimizations.NONE, + new SpeculationLog()); return result; } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java --- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot.amd64; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.code.*; import com.oracle.graal.api.code.RuntimeCallTarget.Descriptor; import com.oracle.graal.api.meta.*; @@ -49,7 +51,7 @@ @Override public void emitCode(TargetMethodAssembler tasm, AMD64MacroAssembler masm) { - HotSpotGraalRuntime runtime = HotSpotGraalRuntime.getInstance(); + HotSpotGraalRuntime runtime = graalRuntime(); Register thread = runtime.getRuntime().threadRegister(); masm.movl(new AMD64Address(thread, runtime.getConfig().pendingDeoptimizationOffset), tasm.runtime.encodeDeoptActionAndReason(action, reason)); AMD64Call.directCall(tasm, masm, tasm.runtime.lookupRuntimeCall(DEOPTIMIZE), null, false, info); diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotGraalRuntime.java --- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotGraalRuntime.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotGraalRuntime.java Thu Apr 25 17:26:18 2013 +0200 @@ -39,10 +39,10 @@ * Called from C++ code to retrieve the singleton instance, creating it first if necessary. */ public static HotSpotGraalRuntime makeInstance() { - if (getInstance() == null) { + if (graalRuntime() == null) { setInstance(new AMD64HotSpotGraalRuntime()); } - return getInstance(); + return graalRuntime(); } @Override diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotGraalRuntime.java --- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotGraalRuntime.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotGraalRuntime.java Thu Apr 25 17:26:18 2013 +0200 @@ -38,10 +38,10 @@ * Called from C++ code to retrieve the singleton instance, creating it first if necessary. */ public static HotSpotGraalRuntime makeInstance() { - if (getInstance() == null) { + if (graalRuntime() == null) { setInstance(new SPARCHotSpotGraalRuntime()); } - return getInstance(); + return graalRuntime(); } @Override diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompileTheWorld.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompileTheWorld.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompileTheWorld.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import java.io.File; import java.lang.reflect.Constructor; import java.lang.reflect.Method; @@ -50,7 +52,7 @@ public static final String SUN_BOOT_CLASS_PATH = "sun.boot.class.path"; // Some runtime instances we need. - private final HotSpotGraalRuntime graalRuntime = HotSpotGraalRuntime.getInstance(); + private final HotSpotGraalRuntime graalRuntime = graalRuntime(); private final VMToCompilerImpl vmToCompiler = (VMToCompilerImpl) graalRuntime.getVMToCompiler(); /** List of Zip/Jar files to compile (see {@link GraalOptions#CompileTheWorld}. */ diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilerThread.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilerThread.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilerThread.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import java.io.*; import java.util.concurrent.*; @@ -59,7 +61,7 @@ public void run() { GraalDebugConfig hotspotDebugConfig = null; if (GraalOptions.Debug) { - PrintStream log = HotSpotGraalRuntime.getInstance().getVMToCompiler().log(); + PrintStream log = graalRuntime().getVMToCompiler().log(); DebugEnvironment.initialize(log); } try { diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java Thu Apr 25 17:26:18 2013 +0200 @@ -47,9 +47,9 @@ private static HotSpotGraalRuntime instance; /** - * Gets the singleton runtime instance object. + * Gets the singleton {@link HotSpotGraalRuntime} object. */ - public static HotSpotGraalRuntime getInstance() { + public static HotSpotGraalRuntime graalRuntime() { return instance; } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java Thu Apr 25 17:26:18 2013 +0200 @@ -25,6 +25,7 @@ import static com.oracle.graal.graph.UnsafeAccess.*; import static com.oracle.graal.hotspot.CompilationTask.*; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; import static com.oracle.graal.java.GraphBuilderPhase.*; import static com.oracle.graal.phases.common.InliningUtil.*; @@ -686,7 +687,7 @@ public HotSpotResolvedObjectType createResolvedJavaType(long metaspaceKlass, String name, String simpleName, Class javaMirror, int sizeOrSpecies) { HotSpotResolvedObjectType type = new HotSpotResolvedObjectType(metaspaceKlass, name, simpleName, javaMirror, sizeOrSpecies); - long offset = HotSpotGraalRuntime.getInstance().getConfig().graalMirrorInClassOffset; + long offset = graalRuntime().getConfig().graalMirrorInClassOffset; if (!unsafe.compareAndSwapObject(javaMirror, offset, null, type)) { // lost the race - return the existing value instead type = (HotSpotResolvedObjectType) unsafe.getObject(javaMirror, offset); diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/debug/LocalImpl.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/debug/LocalImpl.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/debug/LocalImpl.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,8 +22,9 @@ */ package com.oracle.graal.hotspot.debug; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.meta.*; -import com.oracle.graal.hotspot.*; import com.oracle.graal.hotspot.meta.*; public class LocalImpl implements Local { @@ -39,9 +40,9 @@ this.bciStart = bciStart; this.bciEnd = bciEnd; this.slot = slot; - JavaType t = HotSpotGraalRuntime.getInstance().lookupType(type, holder, true); + JavaType t = graalRuntime().lookupType(type, holder, true); if (t instanceof ResolvedJavaType) { - this.resolvedType = (ResolvedJavaType) HotSpotGraalRuntime.getInstance().lookupType(type, holder, false); + this.resolvedType = (ResolvedJavaType) graalRuntime().lookupType(type, holder, false); } else { throw new AssertionError(t.getClass() + " is not a ResolvedJavaType"); } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotConstantPool.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotConstantPool.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotConstantPool.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot.meta; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.meta.*; import com.oracle.graal.bytecode.*; import com.oracle.graal.hotspot.*; @@ -41,13 +43,13 @@ @Override public int length() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().constantPoolLength(type); + return graalRuntime().getCompilerToVM().constantPoolLength(type); } @Override public Object lookupConstant(int cpi) { assert cpi != 0; - Object constant = HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupConstantInPool(type, cpi); + Object constant = graalRuntime().getCompilerToVM().lookupConstantInPool(type, cpi); return constant; } @@ -59,26 +61,26 @@ @Override public Object lookupAppendix(int cpi, int opcode) { assert Bytecodes.isInvoke(opcode); - return HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupAppendixInPool(type, cpi, (byte) opcode); + return graalRuntime().getCompilerToVM().lookupAppendixInPool(type, cpi, (byte) opcode); } @Override public JavaMethod lookupMethod(int cpi, int opcode) { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupMethodInPool(type, cpi, (byte) opcode); + return graalRuntime().getCompilerToVM().lookupMethodInPool(type, cpi, (byte) opcode); } @Override public JavaType lookupType(int cpi, int opcode) { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupTypeInPool(type, cpi); + return graalRuntime().getCompilerToVM().lookupTypeInPool(type, cpi); } @Override public JavaField lookupField(int cpi, int opcode) { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupFieldInPool(type, cpi, (byte) opcode); + return graalRuntime().getCompilerToVM().lookupFieldInPool(type, cpi, (byte) opcode); } @Override public void loadReferencedType(int cpi, int opcode) { - HotSpotGraalRuntime.getInstance().getCompilerToVM().lookupReferencedTypeInPool(type, cpi, (byte) opcode); + graalRuntime().getCompilerToVM().lookupReferencedTypeInPool(type, cpi, (byte) opcode); } } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot.meta; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import java.lang.reflect.*; import com.oracle.graal.api.code.*; @@ -69,12 +71,12 @@ @Override public boolean isValid() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().isInstalledCodeValid(nmethod); + return graalRuntime().getCompilerToVM().isInstalledCodeValid(nmethod); } @Override public void invalidate() { - HotSpotGraalRuntime.getInstance().getCompilerToVM().invalidateInstalledCode(nmethod); + graalRuntime().getCompilerToVM().invalidateInstalledCode(nmethod); } @Override @@ -88,7 +90,7 @@ assert method.getSignature().getParameterKind(0) == Kind.Object; assert method.getSignature().getParameterKind(1) == Kind.Object; assert !Modifier.isStatic(method.getModifiers()) || method.getSignature().getParameterKind(2) == Kind.Object; - return HotSpotGraalRuntime.getInstance().getCompilerToVM().executeCompiledMethod(arg1, arg2, arg3, nmethod); + return graalRuntime().getCompilerToVM().executeCompiledMethod(arg1, arg2, arg3, nmethod); } private boolean checkArgs(Object... args) { @@ -108,7 +110,7 @@ @Override public Object executeVarargs(Object... args) throws InvalidInstalledCodeException { assert checkArgs(args); - return HotSpotGraalRuntime.getInstance().getCompilerToVM().executeCompiledMethodVarargs(args, nmethod); + return graalRuntime().getCompilerToVM().executeCompiledMethodVarargs(args, nmethod); } @Override @@ -118,6 +120,6 @@ @Override public byte[] getCode() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getCode(nmethod); + return graalRuntime().getCompilerToVM().getCode(nmethod); } } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMethodData.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMethodData.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMethodData.java Thu Apr 25 17:26:18 2013 +0200 @@ -40,7 +40,7 @@ private static final long serialVersionUID = -8873133496591225071L; - private static final HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + private static final HotSpotVMConfig config = graalRuntime().getConfig(); private static final HotSpotMethodDataAccessor NO_DATA_NO_EXCEPTION_ACCESSOR = new NoMethodData(TriState.FALSE); private static final HotSpotMethodDataAccessor NO_DATA_EXCEPTION_POSSIBLY_NOT_RECORDED_ACCESSOR = new NoMethodData(TriState.UNKNOWN); @@ -58,7 +58,7 @@ HotSpotMethodData(long metaspaceMethodData) { this.metaspaceMethodData = metaspaceMethodData; - HotSpotGraalRuntime.getInstance().getCompilerToVM().initializeMethodData(metaspaceMethodData, this); + graalRuntime().getCompilerToVM().initializeMethodData(metaspaceMethodData, this); } public boolean hasNormalData() { @@ -78,7 +78,7 @@ } public int getDeoptimizationCount(DeoptimizationReason reason) { - int reasonIndex = HotSpotGraalRuntime.getInstance().getRuntime().convertDeoptReason(reason); + int reasonIndex = graalRuntime().getRuntime().convertDeoptReason(reason); return unsafe.getByte(metaspaceMethodData + config.methodDataOopTrapHistoryOffset + reasonIndex) & 0xFF; } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaField.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaField.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaField.java Thu Apr 25 17:26:18 2013 +0200 @@ -24,6 +24,7 @@ package com.oracle.graal.hotspot.meta; import static com.oracle.graal.api.meta.MetaUtil.*; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; import java.lang.annotation.*; import java.lang.reflect.*; @@ -109,12 +110,12 @@ if (receiver == null) { assert Modifier.isStatic(flags); if (holder.isInitialized()) { - return HotSpotGraalRuntime.getInstance().getRuntime().readUnsafeConstant(getKind(), holder.mirror(), offset); + return graalRuntime().getRuntime().readUnsafeConstant(getKind(), holder.mirror(), offset); } return null; } else { assert !Modifier.isStatic(flags); - return HotSpotGraalRuntime.getInstance().getRuntime().readUnsafeConstant(getKind(), receiver.asObject(), offset); + return graalRuntime().getRuntime().readUnsafeConstant(getKind(), receiver.asObject(), offset); } } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java Thu Apr 25 17:26:18 2013 +0200 @@ -66,7 +66,7 @@ HotSpotResolvedJavaMethod(HotSpotResolvedObjectType holder, long metaspaceMethod) { this.metaspaceMethod = metaspaceMethod; this.holder = holder; - HotSpotGraalRuntime.getInstance().getCompilerToVM().initializeMethod(metaspaceMethod, this); + graalRuntime().getCompilerToVM().initializeMethod(metaspaceMethod, this); } @Override @@ -82,12 +82,12 @@ * Gets the address of the C++ Method object for this method. */ public Constant getMetaspaceMethodConstant() { - return Constant.forIntegerKind(HotSpotGraalRuntime.getInstance().getTarget().wordKind, metaspaceMethod, this); + return Constant.forIntegerKind(graalRuntime().getTarget().wordKind, metaspaceMethod, this); } @Override public int getModifiers() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); return unsafe.getInt(metaspaceMethod + config.methodAccessFlagsOffset) & Modifier.methodModifiers(); } @@ -103,7 +103,7 @@ return null; } if (code == null) { - code = HotSpotGraalRuntime.getInstance().getCompilerToVM().initializeBytecode(metaspaceMethod, new byte[codeSize]); + code = graalRuntime().getCompilerToVM().initializeBytecode(metaspaceMethod, new byte[codeSize]); assert code.length == codeSize : "expected: " + codeSize + ", actual: " + code.length; } return code; @@ -123,12 +123,12 @@ for (int i = 0; i < exceptionHandlerCount; i++) { handlers[i] = new ExceptionHandler(-1, -1, -1, -1, null); } - return HotSpotGraalRuntime.getInstance().getCompilerToVM().initializeExceptionHandlers(metaspaceMethod, handlers); + return graalRuntime().getCompilerToVM().initializeExceptionHandlers(metaspaceMethod, handlers); } public boolean hasBalancedMonitors() { if (hasBalancedMonitors == null) { - hasBalancedMonitors = HotSpotGraalRuntime.getInstance().getCompilerToVM().hasBalancedMonitors(metaspaceMethod); + hasBalancedMonitors = graalRuntime().getCompilerToVM().hasBalancedMonitors(metaspaceMethod); } return hasBalancedMonitors; } @@ -145,14 +145,14 @@ @Override public int getMaxLocals() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); long metaspaceConstMethod = unsafe.getLong(metaspaceMethod + config.methodConstMethodOffset); return unsafe.getShort(metaspaceConstMethod + config.methodMaxLocalsOffset) & 0xFFFF; } @Override public int getMaxStackSize() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); long metaspaceConstMethod = unsafe.getLong(metaspaceMethod + config.methodConstMethodOffset); return config.extraStackEntries + (unsafe.getShort(metaspaceConstMethod + config.constMethodMaxStackOffset) & 0xFFFF); } @@ -161,15 +161,15 @@ public StackTraceElement asStackTraceElement(int bci) { if (bci < 0 || bci >= codeSize) { // HotSpot code can only construct stack trace elements for valid bcis - StackTraceElement ste = HotSpotGraalRuntime.getInstance().getCompilerToVM().getStackTraceElement(metaspaceMethod, 0); + StackTraceElement ste = graalRuntime().getCompilerToVM().getStackTraceElement(metaspaceMethod, 0); return new StackTraceElement(ste.getClassName(), ste.getMethodName(), ste.getFileName(), -1); } - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getStackTraceElement(metaspaceMethod, bci); + return graalRuntime().getCompilerToVM().getStackTraceElement(metaspaceMethod, bci); } public ResolvedJavaMethod uniqueConcreteMethod() { HotSpotResolvedObjectType[] resultHolder = {null}; - long ucm = HotSpotGraalRuntime.getInstance().getCompilerToVM().getUniqueConcreteMethod(metaspaceMethod, resultHolder); + long ucm = graalRuntime().getCompilerToVM().getUniqueConcreteMethod(metaspaceMethod, resultHolder); if (ucm != 0L) { assert resultHolder[0] != null; return resultHolder[0].createMethod(ucm); @@ -180,7 +180,7 @@ @Override public HotSpotSignature getSignature() { if (signature == null) { - signature = new HotSpotSignature(HotSpotGraalRuntime.getInstance().getCompilerToVM().getSignature(metaspaceMethod)); + signature = new HotSpotSignature(graalRuntime().getCompilerToVM().getSignature(metaspaceMethod)); } return signature; } @@ -191,11 +191,11 @@ } public int getCompiledCodeSize() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getCompiledCodeSize(metaspaceMethod); + return graalRuntime().getCompilerToVM().getCompiledCodeSize(metaspaceMethod); } public int invocationCount() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getInvocationCount(metaspaceMethod); + return graalRuntime().getCompilerToVM().getInvocationCount(metaspaceMethod); } @Override @@ -219,7 +219,7 @@ ProfilingInfo info; if (GraalOptions.UseProfilingInformation && methodData == null) { - long metaspaceMethodData = unsafeReadWord(metaspaceMethod + HotSpotGraalRuntime.getInstance().getConfig().methodDataOffset); + long metaspaceMethodData = unsafeReadWord(metaspaceMethod + graalRuntime().getConfig().methodDataOffset); if (metaspaceMethodData != 0) { methodData = new HotSpotMethodData(metaspaceMethodData); } @@ -237,7 +237,7 @@ @Override public void reprofile() { - HotSpotGraalRuntime.getInstance().getCompilerToVM().reprofile(metaspaceMethod); + graalRuntime().getCompilerToVM().reprofile(metaspaceMethod); } @Override @@ -311,12 +311,12 @@ @Override public boolean canBeInlined() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().isMethodCompilable(metaspaceMethod); + return graalRuntime().getCompilerToVM().isMethodCompilable(metaspaceMethod); } @Override public LineNumberTable getLineNumberTable() { - long[] values = HotSpotGraalRuntime.getInstance().getCompilerToVM().getLineNumberTable(this); + long[] values = graalRuntime().getCompilerToVM().getLineNumberTable(this); assert values.length % 2 == 0; int[] bci = new int[values.length / 2]; int[] line = new int[values.length / 2]; @@ -331,7 +331,7 @@ @Override public LocalVariableTable getLocalVariableTable() { - Local[] locals = HotSpotGraalRuntime.getInstance().getCompilerToVM().getLocalVariableTable(this); + Local[] locals = graalRuntime().getCompilerToVM().getLocalVariableTable(this); return new LocalVariableTableImpl(locals); } @@ -345,7 +345,7 @@ if (!holder.isInitialized()) { return -1; } - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getVtableEntryOffset(metaspaceMethod); + return graalRuntime().getCompilerToVM().getVtableEntryOffset(metaspaceMethod); } public void setCurrentTask(CompilationTask task) { @@ -364,7 +364,7 @@ } public int intrinsicId() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); return unsafe.getByte(metaspaceMethod + config.methodIntrinsicIdOffset) & 0xff; } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaType.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaType.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaType.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,8 +22,9 @@ */ package com.oracle.graal.hotspot.meta; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.meta.*; -import com.oracle.graal.hotspot.*; public abstract class HotSpotResolvedJavaType extends HotSpotJavaType implements ResolvedJavaType { @@ -37,6 +38,6 @@ @Override public String getSourceFileName() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getFileName(this); + return graalRuntime().getCompilerToVM().getFileName(this); } } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java Thu Apr 25 17:26:18 2013 +0200 @@ -98,7 +98,7 @@ */ public static ResolvedJavaType fromMetaspaceKlass(long metaspaceKlass) { assert metaspaceKlass != 0; - Class javaClass = (Class) unsafe.getObject(null, metaspaceKlass + HotSpotGraalRuntime.getInstance().getConfig().classMirrorOffset); + Class javaClass = (Class) unsafe.getObject(null, metaspaceKlass + graalRuntime().getConfig().classMirrorOffset); assert javaClass != null; return fromClass(javaClass); } @@ -110,9 +110,9 @@ */ public static ResolvedJavaType fromClass(Class javaClass) { assert javaClass != null; - ResolvedJavaType type = (ResolvedJavaType) unsafe.getObject(javaClass, (long) HotSpotGraalRuntime.getInstance().getConfig().graalMirrorInClassOffset); + ResolvedJavaType type = (ResolvedJavaType) unsafe.getObject(javaClass, (long) graalRuntime().getConfig().graalMirrorInClassOffset); if (type == null) { - type = HotSpotGraalRuntime.getInstance().getCompilerToVM().getResolvedType(javaClass); + type = graalRuntime().getCompilerToVM().getResolvedType(javaClass); assert type != null; } return type; @@ -140,7 +140,7 @@ } public int getAccessFlags() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); return unsafe.getInt(metaspaceKlass + config.klassAccessFlagsOffset); } @@ -160,11 +160,11 @@ @Override public ResolvedJavaType findUniqueConcreteSubtype() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); if (isArray()) { return isFinal(getElementalType(this).getModifiers()) ? this : null; } else if (isInterface()) { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getUniqueImplementor(this); + return graalRuntime().getCompilerToVM().getUniqueImplementor(this); } else { HotSpotResolvedObjectType type = this; while (isAbstract(type.getModifiers())) { @@ -258,12 +258,12 @@ @Override public boolean hasFinalizableSubclass() { assert !isArray(); - return HotSpotGraalRuntime.getInstance().getCompilerToVM().hasFinalizableSubclass(this); + return graalRuntime().getCompilerToVM().hasFinalizableSubclass(this); } @Override public boolean hasFinalizer() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); return (getAccessFlags() & config.klassHasFinalizerFlag) != 0; } @@ -280,7 +280,7 @@ @Override public boolean isInitialized() { if (!isInitialized) { - isInitialized = HotSpotGraalRuntime.getInstance().getCompilerToVM().isTypeInitialized(this); + isInitialized = graalRuntime().getCompilerToVM().isTypeInitialized(this); } return isInitialized; } @@ -288,7 +288,7 @@ @Override public void initialize() { if (!isInitialized) { - HotSpotGraalRuntime.getInstance().getCompilerToVM().initializeType(this); + graalRuntime().getCompilerToVM().initializeType(this); } isInitialized = true; } @@ -328,7 +328,7 @@ @Override public ResolvedJavaMethod resolveMethod(ResolvedJavaMethod method) { assert method instanceof HotSpotMethod; - return (ResolvedJavaMethod) HotSpotGraalRuntime.getInstance().getCompilerToVM().resolveMethod(this, method.getName(), ((HotSpotSignature) method.getSignature()).getMethodDescriptor()); + return (ResolvedJavaMethod) graalRuntime().getCompilerToVM().resolveMethod(this, method.getName(), ((HotSpotSignature) method.getSignature()).getMethodDescriptor()); } @Override @@ -411,7 +411,7 @@ if (isArray() || isInterface()) { instanceFields = new HotSpotResolvedJavaField[0]; } else { - HotSpotResolvedJavaField[] myFields = HotSpotGraalRuntime.getInstance().getCompilerToVM().getInstanceFields(this); + HotSpotResolvedJavaField[] myFields = graalRuntime().getCompilerToVM().getInstanceFields(this); Arrays.sort(myFields, new OffsetComparator()); if (javaMirror != Object.class) { HotSpotResolvedJavaField[] superFields = (HotSpotResolvedJavaField[]) getSuperclass().getInstanceFields(true); @@ -447,7 +447,7 @@ @Override public String getSourceFileName() { - return HotSpotGraalRuntime.getInstance().getCompilerToVM().getFileName(this); + return graalRuntime().getCompilerToVM().getFileName(this); } @Override @@ -464,20 +464,20 @@ * Gets the address of the C++ Klass object for this type. */ public Constant klass() { - return Constant.forIntegerKind(HotSpotGraalRuntime.getInstance().getTarget().wordKind, metaspaceKlass, this); + return Constant.forIntegerKind(graalRuntime().getTarget().wordKind, metaspaceKlass, this); } public boolean isPrimaryType() { - return HotSpotGraalRuntime.getInstance().getConfig().secondarySuperCacheOffset != superCheckOffset(); + return graalRuntime().getConfig().secondarySuperCacheOffset != superCheckOffset(); } public int superCheckOffset() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); return unsafe.getInt(metaspaceKlass + config.superCheckOffsetOffset); } public long prototypeMarkWord() { - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); if (isArray()) { return config.arrayPrototypeMarkWord; } else { @@ -523,7 +523,7 @@ Constructor[] constructors = javaMirror.getDeclaredConstructors(); ResolvedJavaMethod[] result = new ResolvedJavaMethod[constructors.length]; for (int i = 0; i < constructors.length; i++) { - result[i] = HotSpotGraalRuntime.getInstance().getRuntime().lookupJavaConstructor(constructors[i]); + result[i] = graalRuntime().getRuntime().lookupJavaConstructor(constructors[i]); assert result[i].isConstructor(); } return result; @@ -534,7 +534,7 @@ Method[] methods = javaMirror.getDeclaredMethods(); ResolvedJavaMethod[] result = new ResolvedJavaMethod[methods.length]; for (int i = 0; i < methods.length; i++) { - result[i] = HotSpotGraalRuntime.getInstance().getRuntime().lookupJavaMethod(methods[i]); + result[i] = graalRuntime().getRuntime().lookupJavaMethod(methods[i]); assert !result[i].isConstructor(); } return result; diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSignature.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSignature.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSignature.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot.meta; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import java.util.*; import com.oracle.graal.api.meta.*; @@ -118,7 +120,7 @@ } JavaType type = argumentTypes[index]; if (type == null || !(type instanceof ResolvedJavaType)) { - type = HotSpotGraalRuntime.getInstance().lookupType(arguments.get(index), (HotSpotResolvedObjectType) accessingClass, false); + type = graalRuntime().lookupType(arguments.get(index), (HotSpotResolvedObjectType) accessingClass, false); argumentTypes[index] = type; } return type; @@ -137,7 +139,7 @@ @Override public JavaType getReturnType(ResolvedJavaType accessingClass) { if (returnTypeCache == null || !(returnTypeCache instanceof ResolvedJavaType)) { - returnTypeCache = HotSpotGraalRuntime.getInstance().lookupType(returnType, (HotSpotResolvedObjectType) accessingClass, false); + returnTypeCache = graalRuntime().lookupType(returnType, (HotSpotResolvedObjectType) accessingClass, false); } return returnTypeCache; } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotUnresolvedJavaType.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotUnresolvedJavaType.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotUnresolvedJavaType.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,8 +22,9 @@ */ package com.oracle.graal.hotspot.meta; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.meta.*; -import com.oracle.graal.hotspot.*; /** * Implementation of {@link JavaType} for unresolved HotSpot classes. @@ -85,6 +86,6 @@ @Override public ResolvedJavaType resolve(ResolvedJavaType accessingClass) { - return (ResolvedJavaType) HotSpotGraalRuntime.getInstance().lookupType(getName(), (HotSpotResolvedObjectType) accessingClass, true); + return (ResolvedJavaType) graalRuntime().lookupType(getName(), (HotSpotResolvedObjectType) accessingClass, true); } } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java Thu Apr 25 17:26:18 2013 +0200 @@ -26,7 +26,6 @@ import com.oracle.graal.api.code.*; import com.oracle.graal.graph.*; -import com.oracle.graal.hotspot.*; import com.oracle.graal.nodes.calc.*; import com.oracle.graal.nodes.spi.*; import com.oracle.graal.nodes.type.*; @@ -43,7 +42,7 @@ @Override public void generate(LIRGeneratorTool gen) { - Register rawThread = HotSpotGraalRuntime.getInstance().getRuntime().threadRegister(); + Register rawThread = graalRuntime().getRuntime().threadRegister(); gen.setResult(this, rawThread.asValue(this.kind())); } diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotInstalledCodeExecuteNode.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotInstalledCodeExecuteNode.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotInstalledCodeExecuteNode.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,9 +22,10 @@ */ package com.oracle.graal.hotspot.nodes; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import com.oracle.graal.api.code.*; import com.oracle.graal.api.meta.*; -import com.oracle.graal.hotspot.*; import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.hotspot.replacements.*; import com.oracle.graal.nodes.*; @@ -86,7 +87,7 @@ StructuredGraph g = (StructuredGraph) graph(); LoadFieldNode loadnmethod = g.add(new LoadFieldNode(code, nmethodField)); - UnsafeLoadNode load = g.add(new UnsafeLoadNode(loadnmethod, verifiedEntryPointOffset, ConstantNode.forLong(0, graph()), HotSpotGraalRuntime.getInstance().getTarget().wordKind)); + UnsafeLoadNode load = g.add(new UnsafeLoadNode(loadnmethod, verifiedEntryPointOffset, ConstantNode.forLong(0, graph()), graalRuntime().getTarget().wordKind)); LoadFieldNode loadMethod = g.add(new LoadFieldNode(code, methodField)); LoadFieldNode loadmetaspaceMethod = g.add(new LoadFieldNode(loadMethod, metaspaceMethodField)); diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java Thu Apr 25 17:26:18 2013 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.hotspot.nodes; +import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; + import java.lang.reflect.*; import java.util.*; @@ -58,7 +60,7 @@ @Override public void generate(LIRGeneratorTool generator) { LIRGenerator gen = (LIRGenerator) generator; - HotSpotVMConfig config = HotSpotGraalRuntime.getInstance().getConfig(); + HotSpotVMConfig config = graalRuntime().getConfig(); ResolvedJavaMethod method = frameState.method(); boolean isStatic = Modifier.isStatic(method.getModifiers()); diff -r 9ee5f3bfa755 -r 2a0a6dfe27be graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java Thu Apr 25 17:18:17 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java Thu Apr 25 17:26:18 2013 +0200 @@ -49,7 +49,7 @@ public static final Object FINAL_LOCATION = LocationNode.FINAL_LOCATION; public static HotSpotVMConfig config() { - return HotSpotGraalRuntime.getInstance().getConfig(); + return graalRuntime().getConfig(); } @Fold @@ -148,22 +148,22 @@ @Fold public static Kind wordKind() { - return HotSpotGraalRuntime.getInstance().getTarget().wordKind; + return graalRuntime().getTarget().wordKind; } @Fold public static Register threadRegister() { - return HotSpotGraalRuntime.getInstance().getRuntime().threadRegister(); + return graalRuntime().getRuntime().threadRegister(); } @Fold public static Register stackPointerRegister() { - return HotSpotGraalRuntime.getInstance().getRuntime().stackPointerRegister(); + return graalRuntime().getRuntime().stackPointerRegister(); } @Fold public static int wordSize() { - return HotSpotGraalRuntime.getInstance().getTarget().wordSize; + return graalRuntime().getTarget().wordSize; } @Fold diff -r 9ee5f3bfa755 -r 2a0a6dfe27be mx/commands.py --- a/mx/commands.py Thu Apr 25 17:18:17 2013 +0200 +++ b/mx/commands.py Thu Apr 25 17:26:18 2013 +0200 @@ -1361,7 +1361,7 @@ mx.add_argument('--' + c, action='store_const', dest='vmbuild', const=c, help='select the ' + c + ' build of the VM') mx.add_argument('--ecl', action='store_true', dest='make_eclipse_launch', help='create launch configuration for running VM execution(s) in Eclipse') mx.add_argument('--native-dbg', action='store', dest='native_dbg', help='Start the vm inside a debugger', metavar='') - mx.add_argument('--gdb', action='store_const', const='/usr/bin/gdb --args', dest='native_dbg', help='alias for --native-dbg /usr/bin/gdb -- args') + mx.add_argument('--gdb', action='store_const', const='/usr/bin/gdb --args', dest='native_dbg', help='alias for --native-dbg /usr/bin/gdb --args') commands.update({ 'export': [export, '[-options] [zipfile]'],