[all-commits] [llvm/llvm-project] 7256c9: [JITLink][MachO] Add getOrCreateLocalMachOHeader u...
Lang Hames via All-commits
all-commits at lists.llvm.org
Tue Jan 21 21:52:06 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7256c91ad29c1407320d5949414fd4736d1f2644
https://github.com/llvm/llvm-project/commit/7256c91ad29c1407320d5949414fd4736d1f2644
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-22 (Wed, 22 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO.h
M llvm/lib/ExecutionEngine/JITLink/MachO.cpp
Log Message:
-----------
[JITLink][MachO] Add getOrCreateLocalMachOHeader utility.
This function can be called on a LinkGraph to get an anonymous symbol pointing
to the start of a mach_header / mach_header_64 block with suitable cputype and
cpusubtype values for the LinkGraph, and with filetype = MachO::MH_OBJECT.
This functionality will be used in the upcoming compact-unwind support patch:
For graphs that do not have a suitable existing header to use (indicated by the
presence of a "__jitlink$libunwind_dso_base" symbol) the compact-unwind support
plugin will create a local header to use as the dso-base to report to
libunwind.
Commit: 382bafc9579f40bd834b78df671ac45308310462
https://github.com/llvm/llvm-project/commit/382bafc9579f40bd834b78df671ac45308310462
Author: Lang Hames <lhames at gmail.com>
Date: 2025-01-22 (Wed, 22 Jan 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC][MachO] Prepare MachOPlatform for compact-unwind support.
The MachOPlatform::MachOPlatformPlugin class will now inject a
"__jitlink$libunwind_dso_base" symbol into each LinkGraph pointing to the Mach
header for the containing JITDylib. The compact-unwind support plugin will use
this symbol as the dso-base for the __unwind_info sections. (Failure to inject
this symbol would result in the compact-unwind support plugin creating a new
header for every graph).
Compare: https://github.com/llvm/llvm-project/compare/527c030df8b1...382bafc9579f
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list