diff -r a97413340818 -r cecf240c87a0 hotspot/src/share/vm/interpreter/interpreterRuntime.cpp --- a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Tue Jul 18 19:56:18 2017 +0000 +++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Wed Jul 19 09:00:13 2017 +0200 @@ -1033,6 +1033,7 @@ // ProfileData is essentially a wrapper around a derived oop, so we // need to take the lock before making any ProfileData structures. ProfileData* data = h_mdo->data_at(h_mdo->dp_to_di(fr.interpreter_frame_mdp())); + guarantee(data != NULL, "profile data must be valid"); RetData* rdata = data->as_RetData(); address new_mdp = rdata->fixup_ret(return_bci, h_mdo); fr.interpreter_frame_set_mdp(new_mdp);