[llvm] r287276 - [lli] Factor out error handling. NFCI.
Davide Italiano via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 17 14:58:13 PST 2016
Author: davide
Date: Thu Nov 17 16:58:13 2016
New Revision: 287276
URL: http://llvm.org/viewvc/llvm-project?rev=287276&view=rev
Log:
[lli] Factor out error handling. NFCI.
Modified:
llvm/trunk/tools/lli/lli.cpp
Modified: llvm/trunk/tools/lli/lli.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lli/lli.cpp?rev=287276&r1=287275&r2=287276&view=diff
==============================================================================
--- llvm/trunk/tools/lli/lli.cpp (original)
+++ llvm/trunk/tools/lli/lli.cpp Thu Nov 17 16:58:13 2016
@@ -357,6 +357,12 @@ CodeGenOpt::Level getOptLevel() {
llvm_unreachable("Unrecognized opt level.");
}
+LLVM_ATTRIBUTE_NORETURN
+static void reportError(SMDiagnostic Err, const char *ProgName) {
+ Err.print(ProgName, errs());
+ exit(1);
+}
+
//===----------------------------------------------------------------------===//
// main Driver function
//
@@ -388,20 +394,16 @@ int main(int argc, char **argv, char * c
SMDiagnostic Err;
std::unique_ptr<Module> Owner = parseIRFile(InputFile, Err, Context);
Module *Mod = Owner.get();
- if (!Mod) {
- Err.print(argv[0], errs());
- return 1;
- }
+ if (!Mod)
+ reportError(Err, argv[0]);
if (UseJITKind == JITKind::OrcLazy) {
std::vector<std::unique_ptr<Module>> Ms;
Ms.push_back(std::move(Owner));
for (auto &ExtraMod : ExtraModules) {
Ms.push_back(parseIRFile(ExtraMod, Err, Context));
- if (!Ms.back()) {
- Err.print(argv[0], errs());
- return 1;
- }
+ if (!Ms.back())
+ reportError(Err, argv[0]);
}
std::vector<std::string> Args;
Args.push_back(InputFile);
@@ -486,10 +488,8 @@ int main(int argc, char **argv, char * c
// Load any additional modules specified on the command line.
for (unsigned i = 0, e = ExtraModules.size(); i != e; ++i) {
std::unique_ptr<Module> XMod = parseIRFile(ExtraModules[i], Err, Context);
- if (!XMod) {
- Err.print(argv[0], errs());
- return 1;
- }
+ if (!XMod)
+ reportError(Err, argv[0]);
if (EnableCacheManager) {
std::string CacheName("file:");
CacheName.append(ExtraModules[i]);
@@ -504,8 +504,7 @@ int main(int argc, char **argv, char * c
if (!Obj) {
// TODO: Actually report errors helpfully.
consumeError(Obj.takeError());
- Err.print(argv[0], errs());
- return 1;
+ reportError(Err, argv[0]);
}
object::OwningBinary<object::ObjectFile> &O = Obj.get();
EE->addObjectFile(std::move(O));
@@ -514,10 +513,8 @@ int main(int argc, char **argv, char * c
for (unsigned i = 0, e = ExtraArchives.size(); i != e; ++i) {
ErrorOr<std::unique_ptr<MemoryBuffer>> ArBufOrErr =
MemoryBuffer::getFileOrSTDIN(ExtraArchives[i]);
- if (!ArBufOrErr) {
- Err.print(argv[0], errs());
- return 1;
- }
+ if (!ArBufOrErr)
+ reportError(Err, argv[0]);
std::unique_ptr<MemoryBuffer> &ArBuf = ArBufOrErr.get();
Expected<std::unique_ptr<object::Archive>> ArOrErr =
More information about the llvm-commits
mailing list