70 @interface ForceInline { } 71 72 // Prevent method inlining during compilation 73 @Retention(RetentionPolicy.RUNTIME) 74 @interface DontInline { } 75 76 // Prevent method compilation 77 @Retention(RetentionPolicy.RUNTIME) 78 @interface DontCompile { } 79 80 // Number of warmup iterations 81 @Retention(RetentionPolicy.RUNTIME) 82 @interface Warmup { 83 int value(); 84 } 85 86 public abstract class ValueTypeTest { 87 // Run "jtreg -Dtest.c1=true" to enable experimental C1 testing. 88 static final boolean TEST_C1 = Boolean.getBoolean("test.c1"); 89 90 // Random test values 91 public static final int rI = Utils.getRandomInstance().nextInt() % 1000; 92 public static final long rL = Utils.getRandomInstance().nextLong() % 1000; 93 94 // User defined settings 95 protected static final boolean XCOMP = Platform.isComp(); 96 private static final boolean PRINT_GRAPH = true; 97 private static final boolean PRINT_TIMES = Boolean.parseBoolean(System.getProperty("PrintTimes", "false")); 98 private static boolean VERIFY_IR = Boolean.parseBoolean(System.getProperty("VerifyIR", "true")) && !TEST_C1 && !XCOMP; 99 private static final boolean VERIFY_VM = Boolean.parseBoolean(System.getProperty("VerifyVM", "false")); 100 private static final String SCENARIOS = System.getProperty("Scenarios", ""); 101 private static final String TESTLIST = System.getProperty("Testlist", ""); 102 private static final String EXCLUDELIST = System.getProperty("Exclude", ""); 103 private static final int WARMUP = Integer.parseInt(System.getProperty("Warmup", "251")); 104 private static final boolean DUMP_REPLAY = Boolean.parseBoolean(System.getProperty("DumpReplay", "false")); 105 106 // Pre-defined settings 107 private static final List<String> defaultFlags = Arrays.asList( 108 "-XX:-BackgroundCompilation", "-XX:CICompilerCount=1", 109 "-XX:CompileCommand=quiet", | 70 @interface ForceInline { } 71 72 // Prevent method inlining during compilation 73 @Retention(RetentionPolicy.RUNTIME) 74 @interface DontInline { } 75 76 // Prevent method compilation 77 @Retention(RetentionPolicy.RUNTIME) 78 @interface DontCompile { } 79 80 // Number of warmup iterations 81 @Retention(RetentionPolicy.RUNTIME) 82 @interface Warmup { 83 int value(); 84 } 85 86 public abstract class ValueTypeTest { 87 // Run "jtreg -Dtest.c1=true" to enable experimental C1 testing. 88 static final boolean TEST_C1 = Boolean.getBoolean("test.c1"); 89 90 // Should we execute tests that assume (ValueType[] <: Object[])? 91 static final boolean ENABLE_VALUE_ARRAY_COVARIANCE = Boolean.getBoolean("ValueArrayCovariance"); 92 93 // Random test values 94 public static final int rI = Utils.getRandomInstance().nextInt() % 1000; 95 public static final long rL = Utils.getRandomInstance().nextLong() % 1000; 96 97 // User defined settings 98 protected static final boolean XCOMP = Platform.isComp(); 99 private static final boolean PRINT_GRAPH = true; 100 private static final boolean PRINT_TIMES = Boolean.parseBoolean(System.getProperty("PrintTimes", "false")); 101 private static boolean VERIFY_IR = Boolean.parseBoolean(System.getProperty("VerifyIR", "true")) && !TEST_C1 && !XCOMP; 102 private static final boolean VERIFY_VM = Boolean.parseBoolean(System.getProperty("VerifyVM", "false")); 103 private static final String SCENARIOS = System.getProperty("Scenarios", ""); 104 private static final String TESTLIST = System.getProperty("Testlist", ""); 105 private static final String EXCLUDELIST = System.getProperty("Exclude", ""); 106 private static final int WARMUP = Integer.parseInt(System.getProperty("Warmup", "251")); 107 private static final boolean DUMP_REPLAY = Boolean.parseBoolean(System.getProperty("DumpReplay", "false")); 108 109 // Pre-defined settings 110 private static final List<String> defaultFlags = Arrays.asList( 111 "-XX:-BackgroundCompilation", "-XX:CICompilerCount=1", 112 "-XX:CompileCommand=quiet", |