875 // This function must not hit a safepoint! |
875 // This function must not hit a safepoint! |
876 address Method::verified_code_entry() { |
876 address Method::verified_code_entry() { |
877 debug_only(No_Safepoint_Verifier nsv;) |
877 debug_only(No_Safepoint_Verifier nsv;) |
878 nmethod *code = (nmethod *)OrderAccess::load_ptr_acquire(&_code); |
878 nmethod *code = (nmethod *)OrderAccess::load_ptr_acquire(&_code); |
879 if (code == NULL && UseCodeCacheFlushing) { |
879 if (code == NULL && UseCodeCacheFlushing) { |
880 nmethod *saved_code = CodeCache::find_and_remove_saved_code(this); |
880 nmethod *saved_code = CodeCache::reanimate_saved_code(this); |
881 if (saved_code != NULL) { |
881 if (saved_code != NULL) { |
882 methodHandle method(this); |
882 methodHandle method(this); |
883 assert( ! saved_code->is_osr_method(), "should not get here for osr" ); |
883 assert( ! saved_code->is_osr_method(), "should not get here for osr" ); |
884 set_code( method, saved_code ); |
884 set_code( method, saved_code ); |
885 } |
885 } |