794 InstanceKlass* ik = method->method_holder();
795 ik->initialize(THREAD);
796 if (HAS_PENDING_EXCEPTION) {
797 oop throwable = PENDING_EXCEPTION;
798 java_lang_Throwable::print(throwable, tty);
799 tty->cr();
800 if (ReplayIgnoreInitErrors) {
801 CLEAR_PENDING_EXCEPTION;
802 ik->set_init_state(InstanceKlass::fully_initialized);
803 } else {
804 return;
805 }
806 }
807 // Make sure the existence of a prior compile doesn't stop this one
808 nmethod* nm = (entry_bci != InvocationEntryBci) ? method->lookup_osr_nmethod_for(entry_bci, comp_level, true) : method->code();
809 if (nm != nullptr) {
810 nm->make_not_entrant();
811 }
812 replay_state = this;
813 CompileBroker::compile_method(methodHandle(THREAD, method), entry_bci, comp_level,
814 methodHandle(), 0, CompileTask::Reason_Replay, THREAD);
815 replay_state = nullptr;
816 }
817
818 // ciMethod <klass> <name> <signature> <invocation_counter> <backedge_counter> <interpreter_invocation_count> <interpreter_throwout_count> <instructions_size>
819 void process_ciMethod(TRAPS) {
820 Method* method = parse_method(CHECK);
821 if (had_error()) return;
822 ciMethodRecord* rec = new_ciMethod(method);
823 rec->_invocation_counter = parse_int("invocation_counter");
824 rec->_backedge_counter = parse_int("backedge_counter");
825 rec->_interpreter_invocation_count = parse_int("interpreter_invocation_count");
826 rec->_interpreter_throwout_count = parse_int("interpreter_throwout_count");
827 rec->_instructions_size = parse_int("instructions_size");
828 }
829
830 // ciMethodData <klass> <name> <signature> <state> <invocation_counter> orig <length> <byte>* data <length> <ptr>* oops <length> (<offset> <klass>)* methods <length> (<offset> <klass> <name> <signature>)*
831 void process_ciMethodData(TRAPS) {
832 Method* method = parse_method(CHECK);
833 if (had_error()) return;
834 /* just copied from Method, to build interpret data*/
|
794 InstanceKlass* ik = method->method_holder();
795 ik->initialize(THREAD);
796 if (HAS_PENDING_EXCEPTION) {
797 oop throwable = PENDING_EXCEPTION;
798 java_lang_Throwable::print(throwable, tty);
799 tty->cr();
800 if (ReplayIgnoreInitErrors) {
801 CLEAR_PENDING_EXCEPTION;
802 ik->set_init_state(InstanceKlass::fully_initialized);
803 } else {
804 return;
805 }
806 }
807 // Make sure the existence of a prior compile doesn't stop this one
808 nmethod* nm = (entry_bci != InvocationEntryBci) ? method->lookup_osr_nmethod_for(entry_bci, comp_level, true) : method->code();
809 if (nm != nullptr) {
810 nm->make_not_entrant();
811 }
812 replay_state = this;
813 CompileBroker::compile_method(methodHandle(THREAD, method), entry_bci, comp_level,
814 methodHandle(), 0, true, CompileTask::Reason_Replay, THREAD);
815 replay_state = nullptr;
816 }
817
818 // ciMethod <klass> <name> <signature> <invocation_counter> <backedge_counter> <interpreter_invocation_count> <interpreter_throwout_count> <instructions_size>
819 void process_ciMethod(TRAPS) {
820 Method* method = parse_method(CHECK);
821 if (had_error()) return;
822 ciMethodRecord* rec = new_ciMethod(method);
823 rec->_invocation_counter = parse_int("invocation_counter");
824 rec->_backedge_counter = parse_int("backedge_counter");
825 rec->_interpreter_invocation_count = parse_int("interpreter_invocation_count");
826 rec->_interpreter_throwout_count = parse_int("interpreter_throwout_count");
827 rec->_instructions_size = parse_int("instructions_size");
828 }
829
830 // ciMethodData <klass> <name> <signature> <state> <invocation_counter> orig <length> <byte>* data <length> <ptr>* oops <length> (<offset> <klass>)* methods <length> (<offset> <klass> <name> <signature>)*
831 void process_ciMethodData(TRAPS) {
832 Method* method = parse_method(CHECK);
833 if (had_error()) return;
834 /* just copied from Method, to build interpret data*/
|