hotspot/src/share/vm/runtime/sharedRuntime.cpp
changeset 18434 2932166737d5
parent 18073 f02460441ddc
child 19710 2f8ca425504e
child 22812 40e74d1a401a
equal deleted inserted replaced
18433:bcb2e8b5f81e 18434:2932166737d5
   811           // 1. Inline-cache check in C2I handler blob,
   811           // 1. Inline-cache check in C2I handler blob,
   812           // 2. Inline-cache check in nmethod, or
   812           // 2. Inline-cache check in nmethod, or
   813           // 3. Implict null exception in nmethod
   813           // 3. Implict null exception in nmethod
   814 
   814 
   815           if (!cb->is_nmethod()) {
   815           if (!cb->is_nmethod()) {
   816             guarantee(cb->is_adapter_blob() || cb->is_method_handles_adapter_blob(),
   816             bool is_in_blob = cb->is_adapter_blob() || cb->is_method_handles_adapter_blob();
   817                       "exception happened outside interpreter, nmethods and vtable stubs (1)");
   817             if (!is_in_blob) {
       
   818               cb->print();
       
   819               fatal(err_msg("exception happened outside interpreter, nmethods and vtable stubs at pc " INTPTR_FORMAT, pc));
       
   820             }
   818             Events::log_exception(thread, "NullPointerException in code blob at " INTPTR_FORMAT, pc);
   821             Events::log_exception(thread, "NullPointerException in code blob at " INTPTR_FORMAT, pc);
   819             // There is no handler here, so we will simply unwind.
   822             // There is no handler here, so we will simply unwind.
   820             return StubRoutines::throw_NullPointerException_at_call_entry();
   823             return StubRoutines::throw_NullPointerException_at_call_entry();
   821           }
   824           }
   822 
   825