# HG changeset patch # User Doug Simon # Date 1384209833 -3600 # Node ID 70b138d008ff75e9efa3adc2923548e80aed6345 # Parent 6a9f50777e6de54316192dd56737cd0678254ecf HSAIL: used scoped option overriding for all GraalKernelTester based tests Contributed-by: Tom Deneau diff -r 6a9f50777e6d -r 70b138d008ff graal/com.oracle.graal.compiler.hsail.test.infra/src/com/oracle/graal/compiler/hsail/test/infra/GraalKernelTester.java --- a/graal/com.oracle.graal.compiler.hsail.test.infra/src/com/oracle/graal/compiler/hsail/test/infra/GraalKernelTester.java Mon Nov 11 22:44:41 2013 +0100 +++ b/graal/com.oracle.graal.compiler.hsail.test.infra/src/com/oracle/graal/compiler/hsail/test/infra/GraalKernelTester.java Mon Nov 11 23:43:53 2013 +0100 @@ -39,6 +39,9 @@ import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.options.*; +import com.oracle.graal.phases.GraalOptions; +import static com.oracle.graal.options.OptionValue.OverrideScope; + public abstract class GraalKernelTester extends KernelTester { HSAILCompilationResult hsailCompResult; @@ -142,4 +145,23 @@ throw new GraalInternalError(e); } } + + private OptionValue accessibleRemoveNeverExecutedCode = getOptionFromField(GraalOptions.class, "RemoveNeverExecutedCode"); + + // Special overrides for the testGeneratedxxx routines which set + // required graal options that we need to run any junit test + @Override + public void testGeneratedHsail() { + try (OverrideScope s = OptionValue.override(GraalOptions.InlineEverything, true, accessibleRemoveNeverExecutedCode, false)) { + super.testGeneratedHsail(); + } + } + + @Override + public void testGeneratedHsailUsingLambdaMethod() { + try (OverrideScope s = OptionValue.override(GraalOptions.InlineEverything, true, accessibleRemoveNeverExecutedCode, false)) { + super.testGeneratedHsailUsingLambdaMethod(); + } + } + } diff -r 6a9f50777e6d -r 70b138d008ff graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StaticNBodyCallTest.java --- a/graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StaticNBodyCallTest.java Mon Nov 11 22:44:41 2013 +0100 +++ b/graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StaticNBodyCallTest.java Mon Nov 11 23:43:53 2013 +0100 @@ -23,15 +23,10 @@ package com.oracle.graal.compiler.hsail.test; -import static com.oracle.graal.phases.GraalOptions.*; import static org.junit.Assume.*; import org.junit.*; -import com.oracle.graal.options.*; -import com.oracle.graal.options.OptionValue.OverrideScope; -import com.oracle.graal.phases.*; - /** * Unit test of NBody demo app. This version uses a call to the main routine which would normally be * too large to inline. @@ -42,15 +37,15 @@ StaticNBodyTest.run(inxyz, outxyz, invxyz, outvxyz, gid); } - public void before() { + @Override + public void runTest() { + assumeTrue(aggressiveInliningEnabled() || canHandleHSAILMethodCalls()); + super.runTest(); } @Test @Override public void test() throws Exception { - try (OverrideScope s = OptionValue.override(InlineEverything, true, getOptionFromField(GraalOptions.class, "RemoveNeverExecutedCode"), false)) { - assumeTrue(aggressiveInliningEnabled() || canHandleHSAILMethodCalls()); - testGeneratedHsail(); - } + testGeneratedHsail(); } } diff -r 6a9f50777e6d -r 70b138d008ff graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StringContainsAcceptTest.java --- a/graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StringContainsAcceptTest.java Mon Nov 11 22:44:41 2013 +0100 +++ b/graal/com.oracle.graal.compiler.hsail.test/src/com/oracle/graal/compiler/hsail/test/StringContainsAcceptTest.java Mon Nov 11 23:43:53 2013 +0100 @@ -25,11 +25,6 @@ import org.junit.Test; -import com.oracle.graal.options.*; -import com.oracle.graal.options.OptionValue.*; -import com.oracle.graal.phases.*; - -import static com.oracle.graal.phases.GraalOptions.*; import static org.junit.Assume.*; /** @@ -47,18 +42,15 @@ @Override public void runTest() { + assumeTrue(aggressiveInliningEnabled() || canHandleHSAILMethodCalls()); setupArrays(); dispatchMethodKernel(NUM); } - // fails on 3rd workitem @Test @Override public void test() { - try (OverrideScope s = OptionValue.override(InlineEverything, true, getOptionFromField(GraalOptions.class, "RemoveNeverExecutedCode"), false)) { - assumeTrue(aggressiveInliningEnabled() || canHandleHSAILMethodCalls()); - testGeneratedHsail(); - } + testGeneratedHsail(); } }