HomePhabricator

[ORC] Share ownership of JITDylibs between ExecutionSession and…

Authored by lhames on Sun, May 10, 11:34 AM.

Description

[ORC] Share ownership of JITDylibs between ExecutionSession and MaterializationResponsibility.

MaterializationResponsibility objects provide a connection between a
materialization process (compiler, jit linker, etc.) and the JIT state held in
the ExecutionSession and JITDylib objects. Switching to shared ownership
extends the lifetime of JITDylibs to ensure they remain accessible until all
materializers targeting them have completed. This will allow (in a follow-up
patch) JITDylibs to be removed from the ExecutionSession and placed in a
pending-destruction state while they are kept alive to communicate errors
to/from any still-runnning materialization processes. The intent is to enable
JITDylibs to be safely removed even if they have running compiles targeting
them.

Details

Committed
lhamesSun, May 10, 4:37 PM
Parents
rG25544ce2df0d: [gcov] Default coverage version to '407*' and delete CC1 option -coverage-cfg…
Branches
Unknown
Tags
Unknown