summaryrefslogtreecommitdiffstats
path: root/lld/lib/Core/Resolver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/lib/Core/Resolver.cpp')
-rw-r--r--lld/lib/Core/Resolver.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/lld/lib/Core/Resolver.cpp b/lld/lib/Core/Resolver.cpp
index ff80d687e37..f642e0d7b48 100644
--- a/lld/lib/Core/Resolver.cpp
+++ b/lld/lib/Core/Resolver.cpp
@@ -247,11 +247,9 @@ void Resolver::doDefinedAtom(const DefinedAtom &atom) {
_symbolTable.add(atom);
}
- if (_context.deadStrip()) {
- // add to set of dead-strip-roots, all symbols that
- // the compiler marks as don't strip
- if (atom.deadStrip() == DefinedAtom::deadStripNever)
- _deadStripRoots.insert(&atom);
+ // An atom that should never be dead-stripped is a dead-strip root.
+ if (_context.deadStrip() && atom.deadStrip() == DefinedAtom::deadStripNever) {
+ _deadStripRoots.insert(&atom);
}
}
OpenPOWER on IntegriCloud