< prev index next >
src/share/vm/utilities/vmError.cpp
Print this page
*** 24,33 ****
--- 24,34 ----
#include <fcntl.h>
#include "precompiled.hpp"
#include "compiler/compileBroker.hpp"
#include "gc_interface/collectedHeap.hpp"
+ #include "jfr/jfrEvents.hpp"
#include "prims/whitebox.hpp"
#include "runtime/arguments.hpp"
#include "runtime/frame.inline.hpp"
#include "runtime/init.hpp"
#include "runtime/os.hpp"
*** 40,49 ****
--- 41,54 ----
#include "utilities/defaultStream.hpp"
#include "utilities/errorReporter.hpp"
#include "utilities/events.hpp"
#include "utilities/top.hpp"
#include "utilities/vmError.hpp"
+ #include "utilities/macros.hpp"
+ #if INCLUDE_JFR
+ #include "jfr/jfr.hpp"
+ #endif
PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
// List of environment variables that should be reported in error log file.
const char *env_list[] = {
*** 937,946 ****
--- 942,958 ----
// reset signal handlers or exception filter; make sure recursive crashes
// are handled properly.
reset_signal_handlers();
+ EventShutdown e;
+ if (e.should_commit()) {
+ e.set_reason("VM Error");
+ e.commit();
+ }
+
+ JFR_ONLY(Jfr::on_vm_shutdown(true);)
} else {
// If UseOsErrorReporting we call this for each level of the call stack
// while searching for the exception handler. Only the first level needs
// to be reported.
if (UseOSErrorReporting && log_done) return;
< prev index next >