summaryrefslogtreecommitdiffstats
path: root/llvm/tools
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-02-19 20:32:12 +0000
committerChris Lattner <sabre@nondot.org>2004-02-19 20:32:12 +0000
commit12439ffbacccb4919a106602cfca62b7a39d07a1 (patch)
tree63eb105eea28ee7e08a0e975f126a8aa89f090ad /llvm/tools
parentb0bedfa4b2383667dbd63a2796800ae6884bb94e (diff)
downloadbcm5719-llvm-12439ffbacccb4919a106602cfca62b7a39d07a1.tar.gz
bcm5719-llvm-12439ffbacccb4919a106602cfca62b7a39d07a1.zip
Make sure to print a stack trace whenever an error signal is delivered to the
tool. llvm-svn: 11632
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/llvm-ar/llvm-ar.cpp5
-rw-r--r--llvm/tools/llvm-as/llvm-as.cpp1
-rw-r--r--llvm/tools/llvm-db/llvm-db.cpp2
-rw-r--r--llvm/tools/llvm-dis/llvm-dis.cpp2
-rw-r--r--llvm/tools/llvm-link/llvm-link.cpp1
-rw-r--r--llvm/tools/llvm-nm/llvm-nm.cpp3
-rw-r--r--llvm/tools/llvm-prof/llvm-prof.cpp2
-rw-r--r--llvm/tools/opt/opt.cpp1
8 files changed, 15 insertions, 2 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp
index 2404288d304..030ffe4914f 100644
--- a/llvm/tools/llvm-ar/llvm-ar.cpp
+++ b/llvm/tools/llvm-ar/llvm-ar.cpp
@@ -15,6 +15,7 @@
#include "llvm/Bytecode/Reader.h"
#include "Support/CommandLine.h"
#include "Support/FileUtilities.h"
+#include "Support/Signals.h"
#include <string>
#include <fstream>
#include <cstdio>
@@ -544,9 +545,9 @@ void parseCL() {
}
int main(int argc, char **argv) {
-
- //Parse Command line options
cl::ParseCommandLineOptions(argc, argv);
+ PrintStackTraceOnErrorSignal();
+
parseCL();
//Create archive!
diff --git a/llvm/tools/llvm-as/llvm-as.cpp b/llvm/tools/llvm-as/llvm-as.cpp
index 9be5afff116..4b66b78efb7 100644
--- a/llvm/tools/llvm-as/llvm-as.cpp
+++ b/llvm/tools/llvm-as/llvm-as.cpp
@@ -45,6 +45,7 @@ DisableVerify("disable-verify", cl::Hidden,
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, " llvm .ll -> .bc assembler\n");
+ PrintStackTraceOnErrorSignal();
std::ostream *Out = 0;
try {
diff --git a/llvm/tools/llvm-db/llvm-db.cpp b/llvm/tools/llvm-db/llvm-db.cpp
index 124db2ba06a..e450520c278 100644
--- a/llvm/tools/llvm-db/llvm-db.cpp
+++ b/llvm/tools/llvm-db/llvm-db.cpp
@@ -14,6 +14,7 @@
#include "CLIDebugger.h"
#include "Support/CommandLine.h"
+#include "Support/Signals.h"
#include <iostream>
using namespace llvm;
@@ -51,6 +52,7 @@ namespace {
int main(int argc, char **argv, char * const *envp) {
cl::ParseCommandLineOptions(argc, argv,
" llvm source-level debugger\n");
+ PrintStackTraceOnErrorSignal();
if (Version || !Quiet) {
std::cout << "llvm-db: The LLVM source-level debugger\n";
diff --git a/llvm/tools/llvm-dis/llvm-dis.cpp b/llvm/tools/llvm-dis/llvm-dis.cpp
index 6b9c1c2a9e1..d9c175166bd 100644
--- a/llvm/tools/llvm-dis/llvm-dis.cpp
+++ b/llvm/tools/llvm-dis/llvm-dis.cpp
@@ -53,6 +53,8 @@ WriteMode(cl::desc("Specify the output format:"),
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, " llvm .bc -> .ll disassembler\n");
+ PrintStackTraceOnErrorSignal();
+
std::ostream *Out = &std::cout; // Default to printing to stdout...
std::string ErrorMessage;
diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp
index 1b3dda790d3..4fe8637482c 100644
--- a/llvm/tools/llvm-link/llvm-link.cpp
+++ b/llvm/tools/llvm-link/llvm-link.cpp
@@ -84,6 +84,7 @@ static inline std::auto_ptr<Module> LoadFile(const std::string &FN) {
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, " llvm linker\n");
+ PrintStackTraceOnErrorSignal();
assert(InputFilenames.size() > 0 && "OneOrMore is not working");
unsigned BaseArg = 0;
diff --git a/llvm/tools/llvm-nm/llvm-nm.cpp b/llvm/tools/llvm-nm/llvm-nm.cpp
index 8678536962d..c5930e93728 100644
--- a/llvm/tools/llvm-nm/llvm-nm.cpp
+++ b/llvm/tools/llvm-nm/llvm-nm.cpp
@@ -20,6 +20,7 @@
#include "llvm/Bytecode/Reader.h"
#include "Support/CommandLine.h"
#include "Support/FileUtilities.h"
+#include "Support/Signals.h"
#include <cctype>
#include <cstring>
@@ -146,6 +147,8 @@ void DumpSymbolNamesFromFile (std::string &Filename) {
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, " llvm symbol table dumper\n");
+ PrintStackTraceOnErrorSignal();
+
ToolName = argv[0];
if (BSDFormat) OutputFormat = bsd;
if (POSIXFormat) OutputFormat = posix;
diff --git a/llvm/tools/llvm-prof/llvm-prof.cpp b/llvm/tools/llvm-prof/llvm-prof.cpp
index 3c9c3906ff3..2a7789dcd53 100644
--- a/llvm/tools/llvm-prof/llvm-prof.cpp
+++ b/llvm/tools/llvm-prof/llvm-prof.cpp
@@ -18,6 +18,7 @@
#include "llvm/Analysis/ProfileInfoLoader.h"
#include "llvm/Bytecode/Reader.h"
#include "Support/CommandLine.h"
+#include "Support/Signals.h"
#include <cstdio>
#include <map>
#include <set>
@@ -80,6 +81,7 @@ namespace {
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, " llvm profile dump decoder\n");
+ PrintStackTraceOnErrorSignal();
// Read in the bytecode file...
std::string ErrorMessage;
diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp
index d032e24ccd0..35874b2ed7e 100644
--- a/llvm/tools/opt/opt.cpp
+++ b/llvm/tools/opt/opt.cpp
@@ -72,6 +72,7 @@ QuietA("quiet", cl::desc("Alias for -q"), cl::aliasopt(Quiet));
int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv,
" llvm .bc -> .bc modular optimizer\n");
+ PrintStackTraceOnErrorSignal();
// Allocate a full target machine description only if necessary...
// FIXME: The choice of target should be controllable on the command line.
OpenPOWER on IntegriCloud