diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-06-09 00:53:41 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-06-09 00:53:41 +0000 |
commit | dfed58a527bf9e47054b780270ea0e5398bcbe2d (patch) | |
tree | 4642b6b58ebc2fa07af940f61b92b8edf54b4877 /clang | |
parent | 2ad6d48b0c631d7fa8416c07f8b47f167cfd2fd8 (diff) | |
download | bcm5719-llvm-dfed58a527bf9e47054b780270ea0e5398bcbe2d.tar.gz bcm5719-llvm-dfed58a527bf9e47054b780270ea0e5398bcbe2d.zip |
Update to match LLVM r272232.
llvm-svn: 272233
Diffstat (limited to 'clang')
-rw-r--r-- | clang/tools/arcmt-test/arcmt-test.cpp | 2 | ||||
-rw-r--r-- | clang/tools/c-index-test/c-index-test.c | 5 | ||||
-rw-r--r-- | clang/tools/c-index-test/core_main.cpp | 6 | ||||
-rw-r--r-- | clang/tools/clang-check/ClangCheck.cpp | 2 | ||||
-rw-r--r-- | clang/tools/clang-format/ClangFormat.cpp | 2 | ||||
-rw-r--r-- | clang/tools/driver/cc1_main.cpp | 4 | ||||
-rw-r--r-- | clang/tools/driver/cc1as_main.cpp | 7 | ||||
-rw-r--r-- | clang/tools/driver/driver.cpp | 5 | ||||
-rw-r--r-- | clang/tools/libclang/CIndex.cpp | 3 | ||||
-rw-r--r-- | clang/utils/TableGen/TableGen.cpp | 2 |
10 files changed, 14 insertions, 24 deletions
diff --git a/clang/tools/arcmt-test/arcmt-test.cpp b/clang/tools/arcmt-test/arcmt-test.cpp index 7c8e46aee06..900358ec1fe 100644 --- a/clang/tools/arcmt-test/arcmt-test.cpp +++ b/clang/tools/arcmt-test/arcmt-test.cpp @@ -341,7 +341,7 @@ static void printSourceRange(CharSourceRange range, ASTContext &Ctx, int main(int argc, const char **argv) { void *MainAddr = (void*) (intptr_t) GetExecutablePath; - llvm::sys::PrintStackTraceOnErrorSignal(); + llvm::sys::PrintStackTraceOnErrorSignal(argv[0]); std::string resourcesPath = CompilerInvocation::GetResourcesPath(argv[0], MainAddr); diff --git a/clang/tools/c-index-test/c-index-test.c b/clang/tools/c-index-test/c-index-test.c index 5bf5f3d019d..007af9e252a 100644 --- a/clang/tools/c-index-test/c-index-test.c +++ b/clang/tools/c-index-test/c-index-test.c @@ -4440,11 +4440,8 @@ int main(int argc, const char **argv) { client_data.argc = argc; client_data.argv = argv; - if (argc > 1 && strcmp(argv[1], "core") == 0) { + if (argc > 1 && strcmp(argv[1], "core") == 0) client_data.main_func = indextest_core_main; - --client_data.argc; - ++client_data.argv; - } if (getenv("CINDEXTEST_NOTHREADS")) return client_data.main_func(client_data.argc, client_data.argv); diff --git a/clang/tools/c-index-test/core_main.cpp b/clang/tools/c-index-test/core_main.cpp index d11b490e810..e64dae726fe 100644 --- a/clang/tools/c-index-test/core_main.cpp +++ b/clang/tools/c-index-test/core_main.cpp @@ -196,9 +196,13 @@ static void printSymbolNameAndUSR(const Decl *D, ASTContext &Ctx, //===----------------------------------------------------------------------===// int indextest_core_main(int argc, const char **argv) { - sys::PrintStackTraceOnErrorSignal(); + sys::PrintStackTraceOnErrorSignal(argv[0]); PrettyStackTraceProgram X(argc, argv); + assert(argv[1] == StringRef("core")); + ++argv; + --argc; + std::vector<const char *> CompArgs; const char **DoubleDash = std::find(argv, argv + argc, StringRef("--")); if (DoubleDash != argv + argc) { diff --git a/clang/tools/clang-check/ClangCheck.cpp b/clang/tools/clang-check/ClangCheck.cpp index a9934c978d3..b1f97ee1d12 100644 --- a/clang/tools/clang-check/ClangCheck.cpp +++ b/clang/tools/clang-check/ClangCheck.cpp @@ -150,7 +150,7 @@ public: } // namespace int main(int argc, const char **argv) { - llvm::sys::PrintStackTraceOnErrorSignal(); + llvm::sys::PrintStackTraceOnErrorSignal(argv[0]); // Initialize targets for clang module support. llvm::InitializeAllTargets(); diff --git a/clang/tools/clang-format/ClangFormat.cpp b/clang/tools/clang-format/ClangFormat.cpp index 36f237fc750..a9b077e0b1a 100644 --- a/clang/tools/clang-format/ClangFormat.cpp +++ b/clang/tools/clang-format/ClangFormat.cpp @@ -315,7 +315,7 @@ static void PrintVersion() { } int main(int argc, const char **argv) { - llvm::sys::PrintStackTraceOnErrorSignal(); + llvm::sys::PrintStackTraceOnErrorSignal(argv[0]); cl::HideUnrelatedOptions(ClangFormatCategory); diff --git a/clang/tools/driver/cc1_main.cpp b/clang/tools/driver/cc1_main.cpp index 8240561236b..df315b8c0a6 100644 --- a/clang/tools/driver/cc1_main.cpp +++ b/clang/tools/driver/cc1_main.cpp @@ -132,9 +132,5 @@ int cc1_main(ArrayRef<const char *> Argv, const char *Argv0, void *MainAddr) { return !Success; } - // Managed static deconstruction. Useful for making things like - // -time-passes usable. - llvm::llvm_shutdown(); - return !Success; } diff --git a/clang/tools/driver/cc1as_main.cpp b/clang/tools/driver/cc1as_main.cpp index 1c032c09ef6..2d17be99e2d 100644 --- a/clang/tools/driver/cc1as_main.cpp +++ b/clang/tools/driver/cc1as_main.cpp @@ -43,10 +43,8 @@ #include "llvm/Support/FileSystem.h" #include "llvm/Support/FormattedStream.h" #include "llvm/Support/Host.h" -#include "llvm/Support/ManagedStatic.h" #include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/Path.h" -#include "llvm/Support/PrettyStackTrace.h" #include "llvm/Support/Signals.h" #include "llvm/Support/SourceMgr.h" #include "llvm/Support/TargetRegistry.h" @@ -450,11 +448,6 @@ static void LLVMErrorHandler(void *UserData, const std::string &Message, } int cc1as_main(ArrayRef<const char *> Argv, const char *Argv0, void *MainAddr) { - // Print a stack trace if we signal out. - sys::PrintStackTraceOnErrorSignal(); - PrettyStackTraceProgram X(Argv.size(), Argv.data()); - llvm_shutdown_obj Y; // Call llvm_shutdown() on exit. - // Initialize targets and assembly printers/parsers. InitializeAllTargetInfos(); InitializeAllTargetMCs(); diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index b74de081991..4d69aaffba2 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -308,8 +308,9 @@ static int ExecuteCC1Tool(ArrayRef<const char *> argv, StringRef Tool) { } int main(int argc_, const char **argv_) { - llvm::sys::PrintStackTraceOnErrorSignal(); + llvm::sys::PrintStackTraceOnErrorSignal(argv_[0]); llvm::PrettyStackTraceProgram X(argc_, argv_); + llvm::llvm_shutdown_obj Y; // Call llvm_shutdown() on exit. if (llvm::sys::Process::FixupStandardFileDescriptors()) return 1; @@ -497,8 +498,6 @@ int main(int argc_, const char **argv_) { // results now. This happens in -disable-free mode. llvm::TimerGroup::printAll(llvm::errs()); - llvm::llvm_shutdown(); - #ifdef LLVM_ON_WIN32 // Exit status should not be negative on Win32, unless abnormal termination. // Once abnormal termiation was caught, negative status should not be diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp index 20ca6419687..23e50d6761b 100644 --- a/clang/tools/libclang/CIndex.cpp +++ b/clang/tools/libclang/CIndex.cpp @@ -5870,7 +5870,8 @@ CXSourceRange clang_getCursorReferenceNameRange(CXCursor C, unsigned NameFlags, } void clang_enableStackTraces(void) { - llvm::sys::PrintStackTraceOnErrorSignal(); + // FIXME: Provide an argv0 here so we can find llvm-symbolizer. + llvm::sys::PrintStackTraceOnErrorSignal(StringRef()); } void clang_executeOnThread(void (*fn)(void*), void *user_data, diff --git a/clang/utils/TableGen/TableGen.cpp b/clang/utils/TableGen/TableGen.cpp index 724b0e19586..7ccd7150319 100644 --- a/clang/utils/TableGen/TableGen.cpp +++ b/clang/utils/TableGen/TableGen.cpp @@ -241,7 +241,7 @@ bool ClangTableGenMain(raw_ostream &OS, RecordKeeper &Records) { } int main(int argc, char **argv) { - sys::PrintStackTraceOnErrorSignal(); + sys::PrintStackTraceOnErrorSignal(argv[0]); PrettyStackTraceProgram X(argc, argv); cl::ParseCommandLineOptions(argc, argv); |