3302 os::init(); 3303 3304 // Initialize system properties. 3305 Arguments::init_system_properties(); 3306 3307 // So that JDK version can be used as a discriminator when parsing arguments 3308 JDK_Version_init(); 3309 3310 // Update/Initialize System properties after JDK version number is known 3311 Arguments::init_version_specific_system_properties(); 3312 3313 // Parse arguments 3314 jint parse_result = Arguments::parse(args); 3315 if (parse_result != JNI_OK) return parse_result; 3316 3317 os::init_before_ergo(); 3318 3319 jint ergo_result = Arguments::apply_ergo(); 3320 if (ergo_result != JNI_OK) return ergo_result; 3321 3322 // Final check of all arguments after ergonomics which may change values. 3323 if (!CommandLineFlags::check_all_ranges_and_constraints()) { 3324 return JNI_EINVAL; 3325 } 3326 3327 if (PauseAtStartup) { 3328 os::pause(); 3329 } 3330 3331 HOTSPOT_VM_INIT_BEGIN(); 3332 3333 // Record VM creation timing statistics 3334 TraceVmCreationTime create_vm_timer; 3335 create_vm_timer.start(); 3336 3337 // Timing (must come after argument parsing) 3338 TraceTime timer("Create VM", TraceStartupTime); 3339 3340 // Initialize the os module after parsing the args 3341 jint os_init_2_result = os::init_2(); 3342 if (os_init_2_result != JNI_OK) return os_init_2_result; 3343 | 3302 os::init(); 3303 3304 // Initialize system properties. 3305 Arguments::init_system_properties(); 3306 3307 // So that JDK version can be used as a discriminator when parsing arguments 3308 JDK_Version_init(); 3309 3310 // Update/Initialize System properties after JDK version number is known 3311 Arguments::init_version_specific_system_properties(); 3312 3313 // Parse arguments 3314 jint parse_result = Arguments::parse(args); 3315 if (parse_result != JNI_OK) return parse_result; 3316 3317 os::init_before_ergo(); 3318 3319 jint ergo_result = Arguments::apply_ergo(); 3320 if (ergo_result != JNI_OK) return ergo_result; 3321 3322 // Final check of all ranges and 'AfterParse' constraints after ergonomics which may change values. 3323 if (!CommandLineFlags::check_ranges_and_constraints_of_after_parse()) { 3324 return JNI_EINVAL; 3325 } 3326 3327 if (PauseAtStartup) { 3328 os::pause(); 3329 } 3330 3331 HOTSPOT_VM_INIT_BEGIN(); 3332 3333 // Record VM creation timing statistics 3334 TraceVmCreationTime create_vm_timer; 3335 create_vm_timer.start(); 3336 3337 // Timing (must come after argument parsing) 3338 TraceTime timer("Create VM", TraceStartupTime); 3339 3340 // Initialize the os module after parsing the args 3341 jint os_init_2_result = os::init_2(); 3342 if (os_init_2_result != JNI_OK) return os_init_2_result; 3343 |