[compiler-rt] [llvm] [ORC][MachO] Use a per-graph compact-unwind dso_base (PR #208931)
Yaxing Cai via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 13 05:17:31 PDT 2026
cyx-6 wrote:
Thanks @lhames for fast response!
> Do you just need unwind info for your use case, or do you use other MachOPlatform features?
We need the full platform: the driver is static init/fini via `initialize()/deinitialize()`, so `UnwindInfoRegistrationPlugin` alone wouldn't be enough.
> And could you reasonably use the slab allocator for your use case?
We do have a slab allocator, but it's Linux-only. On macOS we're on LLJIT's default allocator, which mmaps each graph independently - so a graph lands below the `JITDylib` header and the `uint32_t` personality delta wraps. It reproduces out of the box, no special configuration. And even our Linux slab is a growable multi-reservation pool (a new slab is `mmap`'d when a graph doesn't fit), so it wouldn't guarantee header-first ordering either.
That's why a per-graph base - matching what `UnwindInfoRegistrationPlugin` already does - seemed like the more general fix than relying on allocator placement. Happy to go whichever way you'd prefer, though.
https://github.com/llvm/llvm-project/pull/208931
More information about the llvm-commits
mailing list