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 10231 : 8148159: [TESTBUG] TestCompilerDirectivesCompatibility tests fails on non-tiered server VMs
Summary: Add whitebox for checking available compilers
Reviewed-by:

*** 27,41 **** * @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; --- 27,41 ---- * @library /testlibrary /test/lib * @modules java.base/sun.misc * java.compiler * java.management * @build jdk.test.lib.* ! * jdk.test.lib.dcmd.* ! * sun.hotspot.WhiteBox ! * @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)); } } --- 52,81 ---- 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