test/compiler/testlibrary/rtm/RTMTestBase.java

Print this page




 221      *                          will be used.
 222      * @param vmOpts additional options to pass to VM.
 223      * @return array with VM options.
 224      */
 225     private static String[] prepareFilteredTestOptions(CompilableTest test,
 226             String[] additionalFilters, String... vmOpts) {
 227         List<String> finalVMOpts = new LinkedList<>();
 228         String[] filters;
 229 
 230         if (additionalFilters != null) {
 231             filters = Arrays.copyOf(additionalFilters,
 232                     additionalFilters.length + 1);
 233         } else {
 234             filters = new String[1];
 235         }
 236 
 237         filters[filters.length - 1] = "RTM";
 238         String[] filteredVMOpts = Utils.getFilteredTestJavaOpts(filters);
 239         Collections.addAll(finalVMOpts, filteredVMOpts);
 240         Collections.addAll(finalVMOpts, "-Xcomp", "-server",
 241                 "-XX:-TieredCompilation",
 242                 CommandLineOptionTest.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
 243                 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
 244                 "-XX:+UseRTMLocking");
 245 
 246         if (test != null) {
 247             for (String method : test.getMethodsToCompileNames()) {
 248                 finalVMOpts.add("-XX:CompileCommand=compileonly," + method);
 249             }
 250         }
 251         Collections.addAll(finalVMOpts, vmOpts);
 252         return finalVMOpts.toArray(new String[finalVMOpts.size()]);
 253     }
 254 
 255     /**
 256      * Adds additional options for VM required for successful execution of test.
 257      *
 258      * @param logFileName a name of compilation log file
 259      * @param test a test case to execute
 260      * @param options additional options to VM
 261      * @return an array with VM options
 262      */
 263     private static String[] prepareTestOptions(String logFileName,
 264             CompilableTest test, String... options) {


 221      *                          will be used.
 222      * @param vmOpts additional options to pass to VM.
 223      * @return array with VM options.
 224      */
 225     private static String[] prepareFilteredTestOptions(CompilableTest test,
 226             String[] additionalFilters, String... vmOpts) {
 227         List<String> finalVMOpts = new LinkedList<>();
 228         String[] filters;
 229 
 230         if (additionalFilters != null) {
 231             filters = Arrays.copyOf(additionalFilters,
 232                     additionalFilters.length + 1);
 233         } else {
 234             filters = new String[1];
 235         }
 236 
 237         filters[filters.length - 1] = "RTM";
 238         String[] filteredVMOpts = Utils.getFilteredTestJavaOpts(filters);
 239         Collections.addAll(finalVMOpts, filteredVMOpts);
 240         Collections.addAll(finalVMOpts, "-Xcomp", "-server",
 241                 "-XX:-TieredCompilation", "-XX:+UseRTMLocking",
 242                 CommandLineOptionTest.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
 243                 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
 244                 "-Xbootclasspath/a:.", "-XX:+WhiteBoxAPI");
 245 
 246         if (test != null) {
 247             for (String method : test.getMethodsToCompileNames()) {
 248                 finalVMOpts.add("-XX:CompileCommand=compileonly," + method);
 249             }
 250         }
 251         Collections.addAll(finalVMOpts, vmOpts);
 252         return finalVMOpts.toArray(new String[finalVMOpts.size()]);
 253     }
 254 
 255     /**
 256      * Adds additional options for VM required for successful execution of test.
 257      *
 258      * @param logFileName a name of compilation log file
 259      * @param test a test case to execute
 260      * @param options additional options to VM
 261      * @return an array with VM options
 262      */
 263     private static String[] prepareTestOptions(String logFileName,
 264             CompilableTest test, String... options) {