Handle lazy symbols is computeIsPreemptible.
llvm-svn: 312812
diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp
index e12b675f3..0e2504e 100644
--- a/lld/ELF/Writer.cpp
+++ b/lld/ELF/Writer.cpp
@@ -1240,7 +1240,7 @@
// executables are automatically exported so that the runtime linker
// can try to resolve them. In that case, they are preemptible. So, we
// return true for an undefined symbols in all cases.
- if (B.isUndefined() || B.isShared())
+ if (!B.isInCurrentDSO())
return true;
// If we have a dynamic list it specifies which local symbols are preemptible.