llvm-project
e8cc4d24 - [ORC][MachO] Fix deferred action handling during MachOPlatform bootstrap.

Commit
344 days ago
[ORC][MachO] Fix deferred action handling during MachOPlatform bootstrap. DeferredAAs should only capture bootstrap actions, but after 30b73ed7bd it was capturing all actions, including those from other plugins. This is problematic as other plugins may introduce actions that need to run before the platform actions (e.g. on arm64e we need pointer signing to run before we access any global pointers in the graph). Note that this effectively undoes 30b73ed7bd, which was a buggy attempt to synchronize writes to the DeferredAAs vector. This patch fixes that issue the obvious way by locking the bootstrap mutex while accessing the DeferredAAs vector. No testcase yet: So far I've only seen this fail during bootstrap of arm64e JIT'd programs.
Author
Committer
Parents
Loading