# HG changeset patch # User Matthias Grimmer # Date 1365777800 -7200 # Node ID 5eab174fb727a8b569d46d1b21caeb091b632dac # Parent 340eb23d3a0a2b703750cb1bc3c32e67e2f9080e Remove non-test from InstalledCodeExecuteHelperTest diff -r 340eb23d3a0a -r 5eab174fb727 graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/test/InstalledCodeExecuteHelperTest.java --- a/graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/test/InstalledCodeExecuteHelperTest.java Fri Apr 12 16:20:55 2013 +0200 +++ b/graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/test/InstalledCodeExecuteHelperTest.java Fri Apr 12 16:43:20 2013 +0200 @@ -38,15 +38,10 @@ public class InstalledCodeExecuteHelperTest extends GraalCompilerTest { - private static final int ITERATIONS = 1000000; + private static final int ITERATIONS = 100000; private final MetaAccessProvider metaAccessProvider; Object[] argsToBind; - public static void main(String[] args) throws NoSuchMethodException, SecurityException, InvalidInstalledCodeException { - InstalledCodeExecuteHelperTest main = new InstalledCodeExecuteHelperTest(); - main.testWithTime(); - } - public InstalledCodeExecuteHelperTest() { this.metaAccessProvider = Graal.getRequiredCapability(MetaAccessProvider.class); } @@ -69,32 +64,12 @@ } - public void testWithTime() throws NoSuchMethodException, SecurityException, InvalidInstalledCodeException { - final Method fooMethod = InstalledCodeExecuteHelperTest.class.getMethod("foo", Object.class, Object.class, Object.class); - final HotSpotResolvedJavaMethod fooJavaMethod = (HotSpotResolvedJavaMethod) metaAccessProvider.lookupJavaMethod(fooMethod); - final HotSpotInstalledCode fooCode = (HotSpotInstalledCode) getCode(fooJavaMethod, parse(fooMethod)); - - argsToBind = new Object[]{fooCode}; - - final Method benchmarkMethod = InstalledCodeExecuteHelperTest.class.getMethod("benchmark", HotSpotInstalledCode.class); - final ResolvedJavaMethod benchmarkJavaMethod = metaAccessProvider.lookupJavaMethod(benchmarkMethod); - final HotSpotInstalledCode installedBenchmarkCodeotInstalledCode = (HotSpotInstalledCode) getCode(benchmarkJavaMethod, parse(benchmarkMethod)); - - long start = System.currentTimeMillis(); - benchmark(fooCode); - long end = System.currentTimeMillis(); - System.out.println((end - start)); - - start = System.currentTimeMillis(); - installedBenchmarkCodeotInstalledCode.executeVarargs(argsToBind[0]); - end = System.currentTimeMillis(); - System.out.println((end - start)); - } - public static Integer benchmark(HotSpotInstalledCode code) throws InvalidInstalledCodeException { int val = 0; - for (int i = 0; i < ITERATIONS; i++) { - val = (Integer) code.execute(null, null, null); + for (int j = 0; j < 100; j++) { + for (int i = 0; i < ITERATIONS; i++) { + val = (Integer) code.execute(null, null, null); + } } return val; } diff -r 340eb23d3a0a -r 5eab174fb727 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 Fri Apr 12 16:20:55 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotInstalledCodeExecuteNode.java Fri Apr 12 16:43:20 2013 +0200 @@ -55,7 +55,10 @@ if (code.isConstant() && code.asConstant().asObject() instanceof HotSpotInstalledCode) { HotSpotInstalledCode hsCode = (HotSpotInstalledCode) code.asConstant().asObject(); InvokeNode invoke = replaceWithInvoke(tool.getRuntime()); - InliningUtil.inline(invoke, (StructuredGraph) hsCode.getGraph(), false); + StructuredGraph graph = (StructuredGraph) hsCode.getGraph(); + if (graph != null) { + InliningUtil.inline(invoke, (StructuredGraph) hsCode.getGraph(), false); + } } else { replaceWithInvoke(tool.getRuntime()); }