summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CompilerDriver/Action.cpp
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2010-07-23 03:42:55 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2010-07-23 03:42:55 +0000
commit1e5d7c6e82f96fbfb62baae27b376f047c804ded (patch)
tree62491595be269a5e96800fdc234f73e7b2983aae /llvm/lib/CompilerDriver/Action.cpp
parent5b9a1ea9c67dcd1078d60a39cd299b43455607ec (diff)
downloadbcm5719-llvm-1e5d7c6e82f96fbfb62baae27b376f047c804ded.tar.gz
bcm5719-llvm-1e5d7c6e82f96fbfb62baae27b376f047c804ded.zip
Get rid of exceptions in llvmc.
llvmc can be now compiled with llvm-gcc on Windows. llvm-svn: 109215
Diffstat (limited to 'llvm/lib/CompilerDriver/Action.cpp')
-rw-r--r--llvm/lib/CompilerDriver/Action.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/llvm/lib/CompilerDriver/Action.cpp b/llvm/lib/CompilerDriver/Action.cpp
index 5f30dce5855..0be80496a3c 100644
--- a/llvm/lib/CompilerDriver/Action.cpp
+++ b/llvm/lib/CompilerDriver/Action.cpp
@@ -13,6 +13,7 @@
#include "llvm/CompilerDriver/Action.h"
#include "llvm/CompilerDriver/BuiltinOptions.h"
+#include "llvm/CompilerDriver/Error.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/SystemUtils.h"
@@ -58,11 +59,15 @@ namespace {
if (prog.isEmpty()) {
prog = FindExecutable(name, ProgramName, (void *)(intptr_t)&Main);
- if (prog.isEmpty())
- throw std::runtime_error("Can't find program '" + name + "'");
+ if (prog.isEmpty()) {
+ PrintError("Can't find program '" + name + "'");
+ return -1;
+ }
+ }
+ if (!prog.canExecute()) {
+ PrintError("Program '" + name + "' is not executable.");
+ return -1;
}
- if (!prog.canExecute())
- throw std::runtime_error("Program '" + name + "' is not executable.");
// Build the command line vector and the redirects array.
const sys::Path* redirects[3] = {0,0,0};
OpenPOWER on IntegriCloud