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