diff options
author | Rui Ueyama <ruiu@google.com> | 2018-04-13 20:57:57 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2018-04-13 20:57:57 +0000 |
commit | e4b59a96e6d645e11a9ec56733531893fc772f33 (patch) | |
tree | 0b4f0ce6fe23ed5e27dac4a34093f4839c6d5dc3 /clang/tools/driver/driver.cpp | |
parent | 0bd55b187e172134fd0f7a4225cdef46e8f727f5 (diff) | |
download | bcm5719-llvm-e4b59a96e6d645e11a9ec56733531893fc772f33.tar.gz bcm5719-llvm-e4b59a96e6d645e11a9ec56733531893fc772f33.zip |
Use InitLLVM in clang as well.
Differential Revision: https://reviews.llvm.org/D45634
llvm-svn: 330067
Diffstat (limited to 'clang/tools/driver/driver.cpp')
-rw-r--r-- | clang/tools/driver/driver.cpp | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index 32cb1b45af1..1913996aebb 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -12,9 +12,9 @@ // //===----------------------------------------------------------------------===// +#include "clang/Driver/Driver.h" #include "clang/Basic/DiagnosticOptions.h" #include "clang/Driver/Compilation.h" -#include "clang/Driver/Driver.h" #include "clang/Driver/DriverDiagnostic.h" #include "clang/Driver/Options.h" #include "clang/Driver/ToolChain.h" @@ -34,9 +34,8 @@ #include "llvm/Support/ErrorHandling.h" #include "llvm/Support/FileSystem.h" #include "llvm/Support/Host.h" -#include "llvm/Support/ManagedStatic.h" +#include "llvm/Support/InitLLVM.h" #include "llvm/Support/Path.h" -#include "llvm/Support/PrettyStackTrace.h" #include "llvm/Support/Process.h" #include "llvm/Support/Program.h" #include "llvm/Support/Regex.h" @@ -322,22 +321,12 @@ static int ExecuteCC1Tool(ArrayRef<const char *> argv, StringRef Tool) { } int main(int argc_, const char **argv_) { - llvm::sys::PrintStackTraceOnErrorSignal(argv_[0]); - llvm::PrettyStackTraceProgram X(argc_, argv_); - llvm::llvm_shutdown_obj Y; // Call llvm_shutdown() on exit. + llvm::InitLLVM X(argc_, argv_); + SmallVector<const char *, 256> argv(argv_, argv_ + argc_); if (llvm::sys::Process::FixupStandardFileDescriptors()) return 1; - SmallVector<const char *, 256> argv; - llvm::SpecificBumpPtrAllocator<char> ArgAllocator; - std::error_code EC = llvm::sys::Process::GetArgumentVector( - argv, llvm::makeArrayRef(argv_, argc_), ArgAllocator); - if (EC) { - llvm::errs() << "error: couldn't get arguments: " << EC.message() << '\n'; - return 1; - } - llvm::InitializeAllTargets(); auto TargetAndMode = ToolChain::getTargetAndModeFromProgramName(argv[0]); |