summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/ELF/InputFiles.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp
index 96499ea0af2..2986cb0d487 100644
--- a/lld/ELF/InputFiles.cpp
+++ b/lld/ELF/InputFiles.cpp
@@ -438,17 +438,15 @@ void BitcodeFile::parse(DenseSet<StringRef> &ComdatGroups) {
}
for (const BasicSymbolRef &Sym : Obj->symbols()) {
- uint8_t Visibility = STV_DEFAULT;
const GlobalValue *GV = Obj->getSymbolGV(Sym.getRawDataRefImpl());
+ assert(GV);
uint32_t Flags = Sym.getFlags();
- if (GV) {
- if (const Comdat *C = GV->getComdat())
- if (!KeptComdats.count(C))
- continue;
- if (!(Flags & object::BasicSymbolRef::SF_Global))
+ if (const Comdat *C = GV->getComdat())
+ if (!KeptComdats.count(C))
continue;
- Visibility = getGvVisibility(GV);
- }
+ if (!(Flags & object::BasicSymbolRef::SF_Global))
+ continue;
+ uint8_t Visibility = getGvVisibility(GV);
SmallString<64> Name;
raw_svector_ostream OS(Name);
OpenPOWER on IntegriCloud