test/compiler/compilercontrol/TestCompilerDirectivesCompatibilityFlag.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff test/compiler/compilercontrol/TestCompilerDirectivesCompatibilityFlag.java

test/compiler/compilercontrol/TestCompilerDirectivesCompatibilityFlag.java

Print this page
rev 10233 : 8148159: [TESTBUG] TestCompilerDirectivesCompatibility tests fails on non-tiered server VMs
Summary: Add whitebox for checking available compilers
Reviewed-by:

*** 22,41 **** */ /* * @test TestCompilerDirectivesCompatibilityFlag * @bug 8137167 ! * @library /testlibrary /test/lib * @modules java.base/sun.misc * java.compiler * java.management * @build jdk.test.lib.* ! * @build jdk.test.lib.dcmd.* ! * @build sun.hotspot.WhiteBox ! * @run main ClassFileInstaller sun.hotspot.WhiteBox * sun.hotspot.WhiteBox$WhiteBoxPermission ! * @run testng/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions * -XX:+PrintAssembly -XX:+WhiteBoxAPI TestCompilerDirectivesCompatibilityFlag * @summary Test compiler control compatibility with compile command */ import jdk.test.lib.dcmd.CommandExecutor; --- 22,42 ---- */ /* * @test TestCompilerDirectivesCompatibilityFlag * @bug 8137167 ! * @library /testlibrary /test/lib / * @modules java.base/sun.misc * java.compiler * java.management * @build jdk.test.lib.* ! * jdk.test.lib.dcmd.* ! * sun.hotspot.WhiteBox ! * compiler.testlibrary.CompilerUtils ! * @run driver ClassFileInstaller sun.hotspot.WhiteBox * sun.hotspot.WhiteBox$WhiteBoxPermission ! * @run testng/othervm -Xbootclasspath/a:. -Xmixed -XX:+UnlockDiagnosticVMOptions * -XX:+PrintAssembly -XX:+WhiteBoxAPI TestCompilerDirectivesCompatibilityFlag * @summary Test compiler control compatibility with compile command */ import jdk.test.lib.dcmd.CommandExecutor;
*** 52,81 **** import java.lang.reflect.Method; import java.util.Objects; public class TestCompilerDirectivesCompatibilityFlag extends TestCompilerDirectivesCompatibilityBase { ! public void testCompatibility(CommandExecutor executor) throws Exception { // Call all validation twice to catch error when overwriting a directive // Flag is default on expect(WB.getBooleanVMFlag("PrintAssembly")); ! expect(WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); ! expect(WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); // load directives that turn it off executor.execute("Compiler.directives_add " + control_off); ! expect(!WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); ! expect(!WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); // remove and see that it is true again executor.execute("Compiler.directives_remove"); ! expect(WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); ! expect(WB.shouldPrintAssembly(method)); ! expect(WB.shouldPrintAssembly(nomatch)); } } --- 53,82 ---- import java.lang.reflect.Method; import java.util.Objects; public class TestCompilerDirectivesCompatibilityFlag extends TestCompilerDirectivesCompatibilityBase { ! public void testCompatibility(CommandExecutor executor, int comp_level) throws Exception { // Call all validation twice to catch error when overwriting a directive // Flag is default on expect(WB.getBooleanVMFlag("PrintAssembly")); ! expect(WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); ! expect(WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); // load directives that turn it off executor.execute("Compiler.directives_add " + control_off); ! expect(!WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); ! expect(!WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); // remove and see that it is true again executor.execute("Compiler.directives_remove"); ! expect(WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); ! expect(WB.shouldPrintAssembly(method, comp_level)); ! expect(WB.shouldPrintAssembly(nomatch, comp_level)); } }
test/compiler/compilercontrol/TestCompilerDirectivesCompatibilityFlag.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File