summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Linker/LinkModules.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-12-07 21:28:22 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-12-07 21:28:22 +0000
commite811c7b5ad178700f44659d9070e4b86a432e302 (patch)
tree9776efeea21c8f144c64dc62c1a2f72e02e7ba50 /llvm/lib/Linker/LinkModules.cpp
parent998cae653b8f92913a17fa94118033d81f2cc1f5 (diff)
downloadbcm5719-llvm-e811c7b5ad178700f44659d9070e4b86a432e302.tar.gz
bcm5719-llvm-e811c7b5ad178700f44659d9070e4b86a432e302.zip
Simplify the error handling a bit. NFC.
llvm-svn: 254952
Diffstat (limited to 'llvm/lib/Linker/LinkModules.cpp')
-rw-r--r--llvm/lib/Linker/LinkModules.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/llvm/lib/Linker/LinkModules.cpp b/llvm/lib/Linker/LinkModules.cpp
index 8e0904a858b..3e1416d8d50 100644
--- a/llvm/lib/Linker/LinkModules.cpp
+++ b/llvm/lib/Linker/LinkModules.cpp
@@ -1559,7 +1559,6 @@ bool ModuleLinker::linkModuleFlagsMetadata() {
// Merge in the flags from the source module, and also collect its set of
// requirements.
- bool HasErr = false;
for (unsigned I = 0, E = SrcModFlags->getNumOperands(); I != E; ++I) {
MDNode *SrcOp = SrcModFlags->getOperand(I);
ConstantInt *SrcBehavior =
@@ -1597,8 +1596,8 @@ bool ModuleLinker::linkModuleFlagsMetadata() {
// Diagnose inconsistent flags which both have override behavior.
if (SrcBehaviorValue == Module::Override &&
SrcOp->getOperand(2) != DstOp->getOperand(2)) {
- HasErr |= emitError("linking module flags '" + ID->getString() +
- "': IDs have conflicting override values");
+ emitError("linking module flags '" + ID->getString() +
+ "': IDs have conflicting override values");
}
continue;
} else if (SrcBehaviorValue == Module::Override) {
@@ -1610,8 +1609,8 @@ bool ModuleLinker::linkModuleFlagsMetadata() {
// Diagnose inconsistent merge behavior types.
if (SrcBehaviorValue != DstBehaviorValue) {
- HasErr |= emitError("linking module flags '" + ID->getString() +
- "': IDs have conflicting behaviors");
+ emitError("linking module flags '" + ID->getString() +
+ "': IDs have conflicting behaviors");
continue;
}
@@ -1630,8 +1629,8 @@ bool ModuleLinker::linkModuleFlagsMetadata() {
case Module::Error: {
// Emit an error if the values differ.
if (SrcOp->getOperand(2) != DstOp->getOperand(2)) {
- HasErr |= emitError("linking module flags '" + ID->getString() +
- "': IDs have conflicting values");
+ emitError("linking module flags '" + ID->getString() +
+ "': IDs have conflicting values");
}
continue;
}
@@ -1676,13 +1675,13 @@ bool ModuleLinker::linkModuleFlagsMetadata() {
MDNode *Op = Flags[Flag].first;
if (!Op || Op->getOperand(2) != ReqValue) {
- HasErr |= emitError("linking module flags '" + Flag->getString() +
- "': does not have the required value");
+ emitError("linking module flags '" + Flag->getString() +
+ "': does not have the required value");
continue;
}
}
- return HasErr;
+ return HasError;
}
// This function returns true if the triples match.
OpenPOWER on IntegriCloud