8076161: Runtime stub for throw_null_pointer_exception always constructs log messages

A LogEvents filter has been added to avoid unnecessary string construction.

Reviewed-by: coleenp, hseigel, dholmes
This commit is contained in:
Max Ockner 2015-06-09 12:22:21 -04:00
parent f286447281
commit d796407e50

View File

@ -160,10 +160,12 @@ void Exceptions::_throw(Thread* thread, const char* file, int line, Handle h_exc
thread->set_pending_exception(h_exception(), file, line); thread->set_pending_exception(h_exception(), file, line);
// vm log // vm log
if (LogEvents){
Events::log_exception(thread, "Exception <%s%s%s> (" INTPTR_FORMAT ") thrown at [%s, line %d]", Events::log_exception(thread, "Exception <%s%s%s> (" INTPTR_FORMAT ") thrown at [%s, line %d]",
h_exception->print_value_string(), message ? ": " : "", message ? message : "", h_exception->print_value_string(), message ? ": " : "", message ? message : "",
(address)h_exception(), file, line); (address)h_exception(), file, line);
} }
}
void Exceptions::_throw_msg(Thread* thread, const char* file, int line, Symbol* name, const char* message, void Exceptions::_throw_msg(Thread* thread, const char* file, int line, Symbol* name, const char* message,