diff options
author | Lang Hames <lhames@gmail.com> | 2021-10-10 15:49:08 -0700 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2021-10-10 20:41:59 -0700 |
commit | 4d7cea3d2e833209d06e201a273f97342035c196 (patch) | |
tree | 714f9f781700838a5182166b9cb82a78bf512a58 /llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp | |
parent | 2e6c92c5400e46e1b27033107560ed67ac25062d (diff) | |
download | llvm-4d7cea3d2e833209d06e201a273f97342035c196.zip llvm-4d7cea3d2e833209d06e201a273f97342035c196.tar.gz llvm-4d7cea3d2e833209d06e201a273f97342035c196.tar.bz2 |
[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).
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp b/llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp index 1485789..6fb8b52 100644 --- a/llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp +++ b/llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp @@ -121,7 +121,7 @@ SelfExecutorProcessControl::runAsMain(ExecutorAddr MainFnAddr, } void SelfExecutorProcessControl::callWrapperAsync(ExecutorAddr WrapperFnAddr, - SendResultFunction SendResult, + IncomingWFRHandler SendResult, ArrayRef<char> ArgBuffer) { using WrapperFnTy = shared::detail::CWrapperFunctionResult (*)(const char *Data, size_t Size); |