diff options
| -rw-r--r-- | lld/ELF/InputFiles.cpp | 14 |
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); |

