lto: don't fetch members for weak undef.
llvm-svn: 262225
diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp
index 5f5ac9e..78abcf9 100644
--- a/lld/ELF/InputFiles.cpp
+++ b/lld/ELF/InputFiles.cpp
@@ -454,11 +454,11 @@
StringRef NameRef = Saver.save(StringRef(Name));
SymbolBody *Body;
uint32_t Flags = Sym.getFlags();
+ bool IsWeak = Flags & BasicSymbolRef::SF_Weak;
if (Flags & BasicSymbolRef::SF_Undefined)
- Body = new (Alloc) Undefined(NameRef, false, STV_DEFAULT, false);
+ Body = new (Alloc) Undefined(NameRef, IsWeak, STV_DEFAULT, false);
else
- Body =
- new (Alloc) DefinedBitcode(NameRef, Flags & BasicSymbolRef::SF_Weak);
+ Body = new (Alloc) DefinedBitcode(NameRef, IsWeak);
SymbolBodies.push_back(Body);
}
}