[all-commits] [llvm/llvm-project] 4d7cea: [ORC] Add optional RunPolicy to ExecutorProcessCon...

lhames via All-commits all-commits at lists.llvm.org
Sun Oct 10 20:52:44 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4d7cea3d2e833209d06e201a273f97342035c196
      https://github.com/llvm/llvm-project/commit/4d7cea3d2e833209d06e201a273f97342035c196
  Author: Lang Hames <lhames at gmail.com>
  Date:   2021-10-10 (Sun, 10 Oct 2021)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutorProcessControl.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/WrapperFunctionUtils.h
    M llvm/include/llvm/ExecutionEngine/Orc/SimpleRemoteEPC.h
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp
    M llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp

  Log Message:
  -----------
  [ORC] Add optional RunPolicy to ExecutorProcessControl::callWrapperAsync.

The callWrapperAsync and callSPSWrapperAsync methods take a handler object
that is run on the return value of the call when it is ready. The new RunPolicy
parameters allow clients to control how these handlers are run. If no policy is
specified then the handler will be packaged as a GenericNamedTask and dispatched
using the ExecutorProcessControl's TaskDispatch member. Callers can use the
ExecutorProcessControl::RunInPlace policy to cause the handler to be run
directly instead, which may be preferrable for simple handlers, or they can
write their own policy object (e.g. to dispatch as some other kind of Task,
rather than GenericNamedTask).




More information about the All-commits mailing list