224 private static String[] prepareFilteredTestOptions(CompilableTest test,
225 String[] additionalFilters, String... vmOpts) {
226 List<String> finalVMOpts = new LinkedList<>();
227 String[] filters;
228
229 if (additionalFilters != null) {
230 filters = Arrays.copyOf(additionalFilters,
231 additionalFilters.length + 1);
232 } else {
233 filters = new String[1];
234 }
235
236 filters[filters.length - 1] = "RTM";
237 String[] filteredVMOpts = Utils.getFilteredTestJavaOpts(filters);
238 Collections.addAll(finalVMOpts, filteredVMOpts);
239 Collections.addAll(finalVMOpts, "-Xcomp", "-server",
240 "-XX:-TieredCompilation", "-XX:+UseRTMLocking",
241 CommandLineOptionTest.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
242 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
243 "-Xbootclasspath/a:.", "-XX:+WhiteBoxAPI",
244 "-XaddExports:java.base/jdk.internal.misc=ALL-UNNAMED");
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) {
|
224 private static String[] prepareFilteredTestOptions(CompilableTest test,
225 String[] additionalFilters, String... vmOpts) {
226 List<String> finalVMOpts = new LinkedList<>();
227 String[] filters;
228
229 if (additionalFilters != null) {
230 filters = Arrays.copyOf(additionalFilters,
231 additionalFilters.length + 1);
232 } else {
233 filters = new String[1];
234 }
235
236 filters[filters.length - 1] = "RTM";
237 String[] filteredVMOpts = Utils.getFilteredTestJavaOpts(filters);
238 Collections.addAll(finalVMOpts, filteredVMOpts);
239 Collections.addAll(finalVMOpts, "-Xcomp", "-server",
240 "-XX:-TieredCompilation", "-XX:+UseRTMLocking",
241 CommandLineOptionTest.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
242 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
243 "-Xbootclasspath/a:.", "-XX:+WhiteBoxAPI",
244 "--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED");
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) {
|