Windows createdump support (#35381)
authorMike McLaughlin <mikem@microsoft.com>
Sat, 25 Apr 2020 05:29:16 +0000 (22:29 -0700)
committerGitHub <noreply@github.com>
Sat, 25 Apr 2020 05:29:16 +0000 (22:29 -0700)
commit2fb35f9c13c4383a5f0853fc7747a6b8055c982e
tree345dd380079c59a136090e8ed862a43be90da4b2
parent6db7579aaee85a22d1a90c0ba158ab6c68328a6e
Windows createdump support (#35381)

Windows createdump support

Build a Windows version of createdump that uses MiniDumpWriteDump.

Launch that createdump from the runtime when the runtime abort because of an unhandled exception when the same environment variables as Linux are set.

Hook up the diagnostic server dump message on Windows.

Add CrashDumpAndTerminateProcess function that generates a dump if enabled and terminates
the process. Replaced varous TerminateProcess calls in the runtime with this new function.

Add resource/version info to createdump.exe

Added stack overflow and debug assert hooks before calls to RaiseFailFastException
21 files changed:
src/coreclr/src/debug/CMakeLists.txt
src/coreclr/src/debug/createdump/CMakeLists.txt
src/coreclr/src/debug/createdump/createdump.cpp
src/coreclr/src/debug/createdump/createdump.h
src/coreclr/src/debug/createdump/createdump.rc [moved from src/coreclr/src/dlls/dbgshim/resource.h with 62% similarity]
src/coreclr/src/debug/createdump/createdumpwindows.cpp [new file with mode: 0644]
src/coreclr/src/debug/createdump/main.cpp
src/coreclr/src/dlls/dbgshim/dbgshim.rc
src/coreclr/src/inc/clrconfigvalues.h
src/coreclr/src/utilcode/debug.cpp
src/coreclr/src/utilcode/hostimpl.cpp
src/coreclr/src/vm/diagnosticserver.cpp
src/coreclr/src/vm/dumpdiagnosticprotocolhelper.cpp
src/coreclr/src/vm/dumpdiagnosticprotocolhelper.h
src/coreclr/src/vm/eepolicy.cpp
src/coreclr/src/vm/eepolicy.h
src/coreclr/src/vm/excep.cpp
src/coreclr/src/vm/excep.h
src/coreclr/src/vm/exceptionhandling.cpp
src/coreclr/src/vm/exceptmacros.h
src/coreclr/src/vm/jithelpers.cpp