[all-commits] [llvm/llvm-project] 41379f: [ORC] Share ownership of JITDylibs between Executi...

lhames via All-commits all-commits at lists.llvm.org
Sun May 10 16:42:57 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 41379f1ec4657860f4840dba914aa643e7938a5c
      https://github.com/llvm/llvm-project/commit/41379f1ec4657860f4840dba914aa643e7938a5c
  Author: Lang Hames <lhames at gmail.com>
  Date:   2020-05-10 (Sun, 10 May 2020)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp

  Log Message:
  -----------
  [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.




More information about the All-commits mailing list