diff options
author | Jez Ng <jezng@fb.com> | 2021-03-12 17:26:12 -0500 |
---|---|---|
committer | Jez Ng <jezng@fb.com> | 2021-03-12 17:26:27 -0500 |
commit | d8283d9ddcc5e9ffda7e72ae122df279b2c5ee17 (patch) | |
tree | fc6dae348fd994c9b7a64ab5a33565a4c1929956 /llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp | |
parent | dc8bee92658e4ac2314aa2f59123078d49463219 (diff) | |
download | llvm-d8283d9ddcc5e9ffda7e72ae122df279b2c5ee17.zip llvm-d8283d9ddcc5e9ffda7e72ae122df279b2c5ee17.tar.gz llvm-d8283d9ddcc5e9ffda7e72ae122df279b2c5ee17.tar.bz2 |
[lld-macho][nfc] Give every SyntheticSection a fake InputSection
Previously, it was difficult to write code that handled both synthetic
and regular sections generically. We solve this problem by creating a
fake InputSection at the start of every SyntheticSection.
This refactor allows us to handle DSOHandle like a regular Defined
symbol (since Defined symbols must be attached to an InputSection), and
paves the way for supporting `__mh_*header` symbols. Additionally, it
simplifies our binding/rebase code.
I did have to extend Defined a little -- it now has a `linkerInternal`
flag, to indicate that `___dso_handle` should not be in the final symbol
table.
I've also added some additional testing for `___dso_handle`.
Reviewed By: #lld-macho, oontvoo
Differential Revision: https://reviews.llvm.org/D98545
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp')
0 files changed, 0 insertions, 0 deletions