diff options
| -rw-r--r-- | lldb/source/Initialization/SystemInitializerCommon.cpp | 4 | ||||
| -rw-r--r-- | lldb/tools/driver/Driver.cpp | 7 | ||||
| -rw-r--r-- | lldb/tools/lldb-mi/MIDriverMain.cpp | 7 | ||||
| -rw-r--r-- | lldb/tools/lldb-server/lldb-server.cpp | 7 |
4 files changed, 21 insertions, 4 deletions
diff --git a/lldb/source/Initialization/SystemInitializerCommon.cpp b/lldb/source/Initialization/SystemInitializerCommon.cpp index 7809fbe2fc8..006ab23595c 100644 --- a/lldb/source/Initialization/SystemInitializerCommon.cpp +++ b/lldb/source/Initialization/SystemInitializerCommon.cpp @@ -29,7 +29,6 @@ #include "lldb/Host/windows/windows.h" #endif -#include "llvm/Support/PrettyStackTrace.h" #include "llvm/Support/TargetSelect.h" #include <string> @@ -63,9 +62,6 @@ void SystemInitializerCommon::Initialize() { } #endif -#if not defined(__APPLE__) - llvm::EnablePrettyStackTrace(); -#endif Log::Initialize(); HostInfo::Initialize(); static Timer::Category func_cat(LLVM_PRETTY_FUNCTION); diff --git a/lldb/tools/driver/Driver.cpp b/lldb/tools/driver/Driver.cpp index e28093482f3..f3391a55e0d 100644 --- a/lldb/tools/driver/Driver.cpp +++ b/lldb/tools/driver/Driver.cpp @@ -41,7 +41,10 @@ #include "lldb/API/SBStringList.h" #include "lldb/API/SBTarget.h" #include "lldb/API/SBThread.h" +#include "llvm/ADT/StringRef.h" #include "llvm/Support/ConvertUTF.h" +#include "llvm/Support/PrettyStackTrace.h" +#include "llvm/Support/Signals.h" #include <thread> #if !defined(__APPLE__) @@ -1231,6 +1234,10 @@ main(int argc, char const *argv[]) const char **argv = argvPointers.data(); #endif + llvm::StringRef ToolName = argv[0]; + llvm::sys::PrintStackTraceOnErrorSignal(ToolName); + llvm::PrettyStackTraceProgram X(argc, argv); + SBDebugger::Initialize(); SBHostOS::ThreadCreated("<lldb.driver.main-thread>"); diff --git a/lldb/tools/lldb-mi/MIDriverMain.cpp b/lldb/tools/lldb-mi/MIDriverMain.cpp index 3b382913a6b..1b3521e8f03 100644 --- a/lldb/tools/lldb-mi/MIDriverMain.cpp +++ b/lldb/tools/lldb-mi/MIDriverMain.cpp @@ -28,6 +28,9 @@ // Third party headers: #include "lldb/API/SBHostOS.h" +#include "llvm/ADT/StringRef.h" +#include "llvm/Support/PrettyStackTrace.h" +#include "llvm/Support/Signals.h" #include <atomic> #include <csignal> #include <stdio.h> @@ -169,6 +172,10 @@ int main(int argc, char const *argv[]) { #endif // _WIN32 #endif // MICONFIG_DEBUG_SHOW_ATTACH_DBG_DLG + llvm::StringRef ToolName = argv[0]; + llvm::sys::PrintStackTraceOnErrorSignal(ToolName); + llvm::PrettyStackTraceProgram X(argc, argv); + // *** Order is important here *** bool bOk = DriverSystemInit(); if (!bOk) { diff --git a/lldb/tools/lldb-server/lldb-server.cpp b/lldb/tools/lldb-server/lldb-server.cpp index 157b493093a..f05c96cfaa9 100644 --- a/lldb/tools/lldb-server/lldb-server.cpp +++ b/lldb/tools/lldb-server/lldb-server.cpp @@ -12,7 +12,10 @@ #include "lldb/lldb-private.h" #include "llvm/ADT/STLExtras.h" +#include "llvm/ADT/StringRef.h" #include "llvm/Support/ManagedStatic.h" +#include "llvm/Support/PrettyStackTrace.h" +#include "llvm/Support/Signals.h" #include <stdio.h> #include <stdlib.h> @@ -45,6 +48,10 @@ static void terminate() { g_debugger_lifetime->Terminate(); } // main //---------------------------------------------------------------------- int main(int argc, char *argv[]) { + llvm::StringRef ToolName = argv[0]; + llvm::sys::PrintStackTraceOnErrorSignal(ToolName); + llvm::PrettyStackTraceProgram X(argc, argv); + int option_error = 0; const char *progname = argv[0]; if (argc < 2) { |

