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);
   }
 }