diff options
author | Nico Weber <thakis@chromium.org> | 2020-12-02 18:59:00 -0500 |
---|---|---|
committer | Nico Weber <thakis@chromium.org> | 2020-12-03 08:35:12 -0500 |
commit | 3422f3cc6e5c8b4657297b5b7b898e5bfb60bbf5 (patch) | |
tree | 86b22368a545ad72970690fc56164fb7c4489153 /lld/MachO/Options.td | |
parent | [compiler-rt] Fix building the aarch64 out-of-line atomics assembly for non-E... (diff) | |
download | llvm-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.td | 3 |
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>, |