[PATCH] D77087: [lld-macho] Only mock out libSystem.dylib loading in tests
Jez Ng via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Apr 12 23:01:28 PDT 2020
int3 marked an inline comment as done.
int3 added inline comments.
================
Comment at: lld/MachO/Writer.cpp:357-361
+ if (StringRef(getenv("LLD_FORCE_LOAD_LIBSYSTEM")) == "1" &&
+ dylibOrdinal == 1 && config->outputType == MH_EXECUTE) {
+ headerSection->addLoadCommand(
+ make<LCLoadDylib>("/usr/lib/libSystem.B.dylib"));
+ }
----------------
ruiu wrote:
> I may be missing something, but doesn't this force lld to always link against /usr/lib/libSystem.B.dylib when it is ran in test, which will fail on non-macOS systems that don't have the dylib file?
This just adds an additional load command to the output file, but it doesn't actually cause lld to read and link against libSystem. I.e. we won't create a DylibFile / InputFile for libSystem. It's just an output-time hack.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D77087/new/
https://reviews.llvm.org/D77087
More information about the llvm-commits
mailing list