diff options
Diffstat (limited to 'lib/Linker')
-rw-r--r-- | lib/Linker/LinkModules.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/Linker/LinkModules.cpp b/lib/Linker/LinkModules.cpp index f055b4a..0d8ba4e 100644 --- a/lib/Linker/LinkModules.cpp +++ b/lib/Linker/LinkModules.cpp @@ -1046,6 +1046,16 @@ static bool LinkAppendingVars(Module *M, return false; } +static bool ResolveAliases(Module *Dest) { + for (Module::alias_iterator I = Dest->alias_begin(), E = Dest->alias_end(); + I != E; ++I) { + GlobalValue* GV = const_cast<GlobalValue*>(I->getAliasedGlobal()); + if (!GV->isDeclaration()) + I->replaceAllUsesWith(GV); + } + + return false; +} // LinkModules - This function links two modules together, with the resulting // left module modified to be the composite of the two input modules. If an |