diff options
| author | Davide Italiano <davide@freebsd.org> | 2016-09-02 16:37:31 +0000 |
|---|---|---|
| committer | Davide Italiano <davide@freebsd.org> | 2016-09-02 16:37:31 +0000 |
| commit | 41bfd6bd6c2a86575a87ff91564ba609a76f067d (patch) | |
| tree | b2a14e5e4a27e9c17acb4f67e567ab81ea62cb44 /llvm/lib | |
| parent | 30e2067e3e04c691632c382807d6e872a7aed9ab (diff) | |
| download | bcm5719-llvm-41bfd6bd6c2a86575a87ff91564ba609a76f067d.tar.gz bcm5719-llvm-41bfd6bd6c2a86575a87ff91564ba609a76f067d.zip | |
[lib/LTO] Simplify. No functional change intended.
llvm-svn: 280503
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/LTO/LTOCodeGenerator.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/llvm/lib/LTO/LTOCodeGenerator.cpp b/llvm/lib/LTO/LTOCodeGenerator.cpp index 7f3d30a1e90..d0527b27b5c 100644 --- a/llvm/lib/LTO/LTOCodeGenerator.cpp +++ b/llvm/lib/LTO/LTOCodeGenerator.cpp @@ -374,21 +374,16 @@ void LTOCodeGenerator::preserveDiscardableGVs( } llvm::Type *i8PTy = llvm::Type::getInt8PtrTy(TheModule.getContext()); auto mayPreserveGlobal = [&](GlobalValue &GV) { - if (!GV.isDiscardableIfUnused() || GV.isDeclaration()) + if (!GV.isDiscardableIfUnused() || GV.isDeclaration() || + !mustPreserveGV(GV)) return; - if (!mustPreserveGV(GV)) - return; - if (GV.hasAvailableExternallyLinkage()) { - emitWarning( + if (GV.hasAvailableExternallyLinkage()) + return emitWarning( (Twine("Linker asked to preserve available_externally global: '") + GV.getName() + "'").str()); - return; - } - if (GV.hasInternalLinkage()) { - emitWarning((Twine("Linker asked to preserve internal global: '") + + if (GV.hasInternalLinkage()) + return emitWarning((Twine("Linker asked to preserve internal global: '") + GV.getName() + "'").str()); - return; - } UsedValuesSet.insert(ConstantExpr::getBitCast(&GV, i8PTy)); }; for (auto &GV : TheModule) |

