1060 JvmtiExport::post_method_entry(thread, InterpreterRuntime::method(thread), InterpreterRuntime::last_frame(thread));
1061 IRT_END
1062
1063
1064 IRT_ENTRY(void, InterpreterRuntime::post_method_exit(JavaThread *thread))
1065 JvmtiExport::post_method_exit(thread, InterpreterRuntime::method(thread), InterpreterRuntime::last_frame(thread));
1066 IRT_END
1067
1068 IRT_LEAF(int, InterpreterRuntime::interpreter_contains(address pc))
1069 {
1070 return (Interpreter::contains(pc) ? 1 : 0);
1071 }
1072 IRT_END
1073
1074
1075 // Implementation of SignatureHandlerLibrary
1076
1077 address SignatureHandlerLibrary::set_handler_blob() {
1078 BufferBlob* handler_blob = BufferBlob::create("native signature handlers", blob_size);
1079 if (handler_blob == NULL) {
1080 CompileBroker::handle_full_code_cache(CodeBlobType::NonNMethod);
1081 return NULL;
1082 }
1083 address handler = handler_blob->code_begin();
1084 _handler_blob = handler_blob;
1085 _handler = handler;
1086 return handler;
1087 }
1088
1089 void SignatureHandlerLibrary::initialize() {
1090 if (_fingerprints != NULL) {
1091 return;
1092 }
1093 if (set_handler_blob() == NULL) {
1094 vm_exit_out_of_memory(blob_size, OOM_MALLOC_ERROR, "native signature handlers");
1095 }
1096
1097 BufferBlob* bb = BufferBlob::create("Signature Handler Temp Buffer",
1098 SignatureHandlerLibrary::buffer_size);
1099 _buffer = bb->code_begin();
1100
|
1060 JvmtiExport::post_method_entry(thread, InterpreterRuntime::method(thread), InterpreterRuntime::last_frame(thread));
1061 IRT_END
1062
1063
1064 IRT_ENTRY(void, InterpreterRuntime::post_method_exit(JavaThread *thread))
1065 JvmtiExport::post_method_exit(thread, InterpreterRuntime::method(thread), InterpreterRuntime::last_frame(thread));
1066 IRT_END
1067
1068 IRT_LEAF(int, InterpreterRuntime::interpreter_contains(address pc))
1069 {
1070 return (Interpreter::contains(pc) ? 1 : 0);
1071 }
1072 IRT_END
1073
1074
1075 // Implementation of SignatureHandlerLibrary
1076
1077 address SignatureHandlerLibrary::set_handler_blob() {
1078 BufferBlob* handler_blob = BufferBlob::create("native signature handlers", blob_size);
1079 if (handler_blob == NULL) {
1080 return NULL;
1081 }
1082 address handler = handler_blob->code_begin();
1083 _handler_blob = handler_blob;
1084 _handler = handler;
1085 return handler;
1086 }
1087
1088 void SignatureHandlerLibrary::initialize() {
1089 if (_fingerprints != NULL) {
1090 return;
1091 }
1092 if (set_handler_blob() == NULL) {
1093 vm_exit_out_of_memory(blob_size, OOM_MALLOC_ERROR, "native signature handlers");
1094 }
1095
1096 BufferBlob* bb = BufferBlob::create("Signature Handler Temp Buffer",
1097 SignatureHandlerLibrary::buffer_size);
1098 _buffer = bb->code_begin();
1099
|