diff --git a/lib/VMCore/Globals.cpp b/lib/VMCore/Globals.cpp index e55cb5a5ac5..7ceda6cd53d 100644 --- a/lib/VMCore/Globals.cpp +++ b/lib/VMCore/Globals.cpp @@ -260,7 +260,7 @@ const GlobalValue *GlobalAlias::resolveAliasedGlobal(bool traverseWeak) const { // Iterate over aliasing chain, stopping on weak alias if necessary. while (const GlobalAlias *GA = dyn_cast(GV)) { - if (traverseWeak && GA->hasWeakLinkage()) + if (!traverseWeak && GA->hasWeakLinkage()) break; GV = GA->getAliasedGlobal();