949 vmSymbols::object_initializer_name(),
950 vmSymbols::threadgroup_string_void_signature(),
951 thread_group,
952 string,
953 CHECK_NULL);
954 return thread_oop();
955 }
956
957 static void call_initializeSystemClass(TRAPS) {
958 klassOop k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_System(), true, CHECK);
959 instanceKlassHandle klass (THREAD, k);
960
961 JavaValue result(T_VOID);
962 JavaCalls::call_static(&result, klass, vmSymbols::initializeSystemClass_name(),
963 vmSymbols::void_method_signature(), CHECK);
964 }
965
966 // General purpose hook into Java code, run once when the VM is initialized.
967 // The Java library method itself may be changed independently from the VM.
968 static void call_postVMInitHook(TRAPS) {
969 klassOop k = SystemDictionary::sun_misc_PostVMInitHook_klass();
970 instanceKlassHandle klass (THREAD, k);
971 if (klass.not_null()) {
972 JavaValue result(T_VOID);
973 JavaCalls::call_static(&result, klass, vmSymbols::run_method_name(),
974 vmSymbols::void_method_signature(),
975 CHECK);
976 }
977 }
978
979 static void reset_vm_info_property(TRAPS) {
980 // the vm info string
981 ResourceMark rm(THREAD);
982 const char *vm_info = VM_Version::vm_info_string();
983
984 // java.lang.System class
985 klassOop k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_System(), true, CHECK);
986 instanceKlassHandle klass (THREAD, k);
987
988 // setProperty arguments
989 Handle key_str = java_lang_String::create_from_str("java.vm.info", CHECK);
|
949 vmSymbols::object_initializer_name(),
950 vmSymbols::threadgroup_string_void_signature(),
951 thread_group,
952 string,
953 CHECK_NULL);
954 return thread_oop();
955 }
956
957 static void call_initializeSystemClass(TRAPS) {
958 klassOop k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_System(), true, CHECK);
959 instanceKlassHandle klass (THREAD, k);
960
961 JavaValue result(T_VOID);
962 JavaCalls::call_static(&result, klass, vmSymbols::initializeSystemClass_name(),
963 vmSymbols::void_method_signature(), CHECK);
964 }
965
966 // General purpose hook into Java code, run once when the VM is initialized.
967 // The Java library method itself may be changed independently from the VM.
968 static void call_postVMInitHook(TRAPS) {
969 klassOop k = SystemDictionary::PostVMInitHook_klass();
970 instanceKlassHandle klass (THREAD, k);
971 if (klass.not_null()) {
972 JavaValue result(T_VOID);
973 JavaCalls::call_static(&result, klass, vmSymbols::run_method_name(),
974 vmSymbols::void_method_signature(),
975 CHECK);
976 }
977 }
978
979 static void reset_vm_info_property(TRAPS) {
980 // the vm info string
981 ResourceMark rm(THREAD);
982 const char *vm_info = VM_Version::vm_info_string();
983
984 // java.lang.System class
985 klassOop k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_System(), true, CHECK);
986 instanceKlassHandle klass (THREAD, k);
987
988 // setProperty arguments
989 Handle key_str = java_lang_String::create_from_str("java.vm.info", CHECK);
|