diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-10-20 04:57:22 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-10-20 04:57:22 +0000 |
| commit | a8a74ece085c97df11ddb3e01084d6a6f1741255 (patch) | |
| tree | 3a20b9b4bf863bfffe95b5a78e85c177f708868f /llvm/tools | |
| parent | ffea0abe813bb6d0355f5adb07f4d08a2d56a99e (diff) | |
| download | bcm5719-llvm-a8a74ece085c97df11ddb3e01084d6a6f1741255.tar.gz bcm5719-llvm-a8a74ece085c97df11ddb3e01084d6a6f1741255.zip | |
Record sysbols created by aliases. Fixes PR8414.
llvm-svn: 116910
Diffstat (limited to 'llvm/tools')
| -rw-r--r-- | llvm/tools/lto/LTOModule.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/tools/lto/LTOModule.cpp b/llvm/tools/lto/LTOModule.cpp index f0f3dbcce4a..c1f670ae4ba 100644 --- a/llvm/tools/lto/LTOModule.cpp +++ b/llvm/tools/lto/LTOModule.cpp @@ -469,6 +469,15 @@ void LTOModule::lazyParseSymbols() { pos = inlineAsm.find(glbl, pend); } + // add aliases + for (Module::alias_iterator i = _module->alias_begin(), + e = _module->alias_end(); i != e; ++i) { + if (i->isDeclaration()) + addPotentialUndefinedSymbol(i, mangler); + else + addDefinedDataSymbol(i, mangler); + } + // make symbols for all undefines for (StringMap<NameAndAttributes>::iterator it=_undefines.begin(); it != _undefines.end(); ++it) { |

