From 364d1203e7adaededf3c01f58bd968ee61f4a316 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 19 Feb 2004 20:32:39 +0000 Subject: [PATCH] Make sure to print a stack trace whenever an error signal is delivered to the tool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11633 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/extract/extract.cpp | 2 ++ tools/gccas/gccas.cpp | 1 + tools/gccld/gccld.cpp | 1 + tools/llc/llc.cpp | 3 ++- tools/lli/lli.cpp | 2 ++ tools/llvm-extract/llvm-extract.cpp | 2 ++ 6 files changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/extract/extract.cpp b/tools/extract/extract.cpp index 9c03f85bf57..b91020db7c7 100644 --- a/tools/extract/extract.cpp +++ b/tools/extract/extract.cpp @@ -19,6 +19,7 @@ #include "llvm/Transforms/IPO.h" #include "llvm/Target/TargetData.h" #include "Support/CommandLine.h" +#include "Support/Signals.h" #include #include using namespace llvm; @@ -42,6 +43,7 @@ ExtractFunc("func", cl::desc("Specify function to extract"), cl::init("main"), int main(int argc, char **argv) { cl::ParseCommandLineOptions(argc, argv, " llvm extractor\n"); + PrintStackTraceOnErrorSignal(); std::auto_ptr M(ParseBytecodeFile(InputFilename)); if (M.get() == 0) { diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp index 1abf251fce3..7b5018a5198 100644 --- a/tools/gccas/gccas.cpp +++ b/tools/gccas/gccas.cpp @@ -107,6 +107,7 @@ void AddConfiguredTransformationPasses(PassManager &PM) { int main(int argc, char **argv) { cl::ParseCommandLineOptions(argc, argv, " llvm .s -> .o assembler for GCC\n"); + PrintStackTraceOnErrorSignal(); std::auto_ptr M; try { diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp index 74b9ff00b2b..0f5bc18a31f 100644 --- a/tools/gccld/gccld.cpp +++ b/tools/gccld/gccld.cpp @@ -195,6 +195,7 @@ void RemoveEnv(const char * name, char ** const envp) { int main(int argc, char **argv, char **envp) { cl::ParseCommandLineOptions(argc, argv, " llvm linker for GCC\n"); + PrintStackTraceOnErrorSignal(); std::string ModuleID("gccld-output"); std::auto_ptr Composite(new Module(ModuleID)); diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp index 959bdbe36cb..3176b4ce743 100644 --- a/tools/llc/llc.cpp +++ b/tools/llc/llc.cpp @@ -69,7 +69,8 @@ GetFileNameRoot(const std::string &InputFilename) // int main(int argc, char **argv) { cl::ParseCommandLineOptions(argc, argv, " llvm system compiler\n"); - + PrintStackTraceOnErrorSignal(); + // Load the module to be compiled... std::auto_ptr M(ParseBytecodeFile(InputFilename)); if (M.get() == 0) { diff --git a/tools/lli/lli.cpp b/tools/lli/lli.cpp index 15bf500bba8..96a1a34bfaa 100644 --- a/tools/lli/lli.cpp +++ b/tools/lli/lli.cpp @@ -20,6 +20,7 @@ #include "llvm/ExecutionEngine/ExecutionEngine.h" #include "llvm/ExecutionEngine/GenericValue.h" #include "Support/CommandLine.h" +#include "Support/Signals.h" using namespace llvm; @@ -46,6 +47,7 @@ namespace { int main(int argc, char **argv, char * const *envp) { cl::ParseCommandLineOptions(argc, argv, " llvm interpreter & dynamic compiler\n"); + PrintStackTraceOnErrorSignal(); // Load the bytecode... std::string ErrorMsg; diff --git a/tools/llvm-extract/llvm-extract.cpp b/tools/llvm-extract/llvm-extract.cpp index 9c03f85bf57..b91020db7c7 100644 --- a/tools/llvm-extract/llvm-extract.cpp +++ b/tools/llvm-extract/llvm-extract.cpp @@ -19,6 +19,7 @@ #include "llvm/Transforms/IPO.h" #include "llvm/Target/TargetData.h" #include "Support/CommandLine.h" +#include "Support/Signals.h" #include #include using namespace llvm; @@ -42,6 +43,7 @@ ExtractFunc("func", cl::desc("Specify function to extract"), cl::init("main"), int main(int argc, char **argv) { cl::ParseCommandLineOptions(argc, argv, " llvm extractor\n"); + PrintStackTraceOnErrorSignal(); std::auto_ptr M(ParseBytecodeFile(InputFilename)); if (M.get() == 0) { -- 2.34.1