summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDavide Italiano <davide@freebsd.org>2016-09-02 16:37:31 +0000
committerDavide Italiano <davide@freebsd.org>2016-09-02 16:37:31 +0000
commit41bfd6bd6c2a86575a87ff91564ba609a76f067d (patch)
treeb2a14e5e4a27e9c17acb4f67e567ab81ea62cb44 /llvm/lib
parent30e2067e3e04c691632c382807d6e872a7aed9ab (diff)
downloadbcm5719-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.cpp17
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)
OpenPOWER on IntegriCloud