aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNico Weber <thakis@chromium.org>2020-12-02 18:59:00 -0500
committerNico Weber <thakis@chromium.org>2020-12-03 08:35:12 -0500
commit3422f3cc6e5c8b4657297b5b7b898e5bfb60bbf5 (patch)
tree86b22368a545ad72970690fc56164fb7c4489153 /lld/MachO/Options.td
parent[compiler-rt] Fix building the aarch64 out-of-line atomics assembly for non-E... (diff)
downloadllvm-project-3422f3cc6e5c8b4657297b5b7b898e5bfb60bbf5.tar.gz
llvm-project-3422f3cc6e5c8b4657297b5b7b898e5bfb60bbf5.tar.bz2
llvm-project-3422f3cc6e5c8b4657297b5b7b898e5bfb60bbf5.zip
Reland "[mac/lld] Implement -why_load".
The problem was that `sym` became replaced in the call to make<ObjFile> and referring to it afer that read memory that now stored a different kind of symbol (a Defined instead of a LazySymbol). Since this happens only once per archive, just copy the symbol to the stack before make<ObjFile> and read the copy instead. Originally reviewed at https://reviews.llvm.org/D92496
Diffstat (limited to 'lld/MachO/Options.td')
-rw-r--r--lld/MachO/Options.td3
1 files changed, 1 insertions, 2 deletions
diff --git a/lld/MachO/Options.td b/lld/MachO/Options.td
index 399928e8d9ae..5b38fc650e9f 100644
--- a/lld/MachO/Options.td
+++ b/lld/MachO/Options.td
@@ -426,8 +426,7 @@ def commons : Separate<["-"], "commons">,
def grp_introspect : OptionGroup<"introspect">, HelpText<"INTROSPECTING THE LINKER">;
def why_load : Flag<["-"], "why_load">,
- HelpText<"Log the symbol that compels loading of each object file from a static library">,
- Flags<[HelpHidden]>,
+ HelpText<"Log why each object file is loaded from a static library">,
Group<grp_introspect>;
def whyload : Flag<["-"], "whyload">,
Alias<why_load>,