355 // Bytecode rewriting 356 static void set_bytecode_flags(); 357 358 // Invocation API hooks 359 static abort_hook_t _abort_hook; 360 static exit_hook_t _exit_hook; 361 static vfprintf_hook_t _vfprintf_hook; 362 363 // System properties 364 static bool add_property(const char* prop); 365 366 // Aggressive optimization flags. 367 static void set_aggressive_opts_flags(); 368 369 // Argument parsing 370 static void do_pd_flag_adjustments(); 371 static bool parse_argument(const char* arg, Flag::Flags origin); 372 static bool process_argument(const char* arg, jboolean ignore_unrecognized, Flag::Flags origin); 373 static void process_java_launcher_argument(const char*, void*); 374 static void process_java_compiler_argument(char* arg); 375 static jint parse_options_environment_variable(const char* name, SysClassPath* scp_p, bool* scp_assembly_required_p); 376 static jint parse_java_tool_options_environment_variable(SysClassPath* scp_p, bool* scp_assembly_required_p); 377 static jint parse_java_options_environment_variable(SysClassPath* scp_p, bool* scp_assembly_required_p); 378 static jint parse_vm_init_args(const JavaVMInitArgs* args); 379 static jint parse_each_vm_init_arg(const JavaVMInitArgs* args, SysClassPath* scp_p, bool* scp_assembly_required_p, Flag::Flags origin); 380 static jint finalize_vm_init_args(SysClassPath* scp_p, bool scp_assembly_required); 381 static bool is_bad_option(const JavaVMOption* option, jboolean ignore, const char* option_type); 382 383 static bool is_bad_option(const JavaVMOption* option, jboolean ignore) { 384 return is_bad_option(option, ignore, NULL); 385 } 386 387 static bool is_percentage(uintx val) { 388 return val <= 100; 389 } 390 391 static bool verify_interval(uintx val, uintx min, 392 uintx max, const char* name); 393 static bool verify_min_value(intx val, intx min, const char* name); 394 static bool verify_percentage(uintx value, const char* name); 395 static void describe_range_error(ArgsRange errcode); 396 static ArgsRange check_memory_size(julong size, julong min_size); 397 static ArgsRange parse_memory_size(const char* s, julong* long_arg, 398 julong min_size); | 355 // Bytecode rewriting 356 static void set_bytecode_flags(); 357 358 // Invocation API hooks 359 static abort_hook_t _abort_hook; 360 static exit_hook_t _exit_hook; 361 static vfprintf_hook_t _vfprintf_hook; 362 363 // System properties 364 static bool add_property(const char* prop); 365 366 // Aggressive optimization flags. 367 static void set_aggressive_opts_flags(); 368 369 // Argument parsing 370 static void do_pd_flag_adjustments(); 371 static bool parse_argument(const char* arg, Flag::Flags origin); 372 static bool process_argument(const char* arg, jboolean ignore_unrecognized, Flag::Flags origin); 373 static void process_java_launcher_argument(const char*, void*); 374 static void process_java_compiler_argument(char* arg); 375 static jint parse_options_environment_variable(const char* name, JavaVMInitArgs* vm_args); 376 static jint parse_java_tool_options_environment_variable(JavaVMInitArgs* vm_args); 377 static jint parse_java_options_environment_variable(JavaVMInitArgs* vm_args); 378 static jint parse_vm_init_args(const JavaVMInitArgs *java_tool_options_args, 379 const JavaVMInitArgs *java_options_args, 380 const JavaVMInitArgs *cmd_line_args); 381 static jint parse_each_vm_init_arg(const JavaVMInitArgs* args, SysClassPath* scp_p, bool* scp_assembly_required_p, Flag::Flags origin); 382 static jint finalize_vm_init_args(SysClassPath* scp_p, bool scp_assembly_required); 383 static bool is_bad_option(const JavaVMOption* option, jboolean ignore, const char* option_type); 384 385 static bool is_bad_option(const JavaVMOption* option, jboolean ignore) { 386 return is_bad_option(option, ignore, NULL); 387 } 388 389 static bool is_percentage(uintx val) { 390 return val <= 100; 391 } 392 393 static bool verify_interval(uintx val, uintx min, 394 uintx max, const char* name); 395 static bool verify_min_value(intx val, intx min, const char* name); 396 static bool verify_percentage(uintx value, const char* name); 397 static void describe_range_error(ArgsRange errcode); 398 static ArgsRange check_memory_size(julong size, julong min_size); 399 static ArgsRange parse_memory_size(const char* s, julong* long_arg, 400 julong min_size); |