summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2016-08-30 21:29:48 +0000
committerLang Hames <lhames@gmail.com>2016-08-30 21:29:48 +0000
commita9c929e18f37474960a151f82db2876ce860ff85 (patch)
treeef884dec6f0fb2acf4460059378632fd313c9092 /llvm
parent6d54d55648ec92dd589f043a5d471232197e5ad5 (diff)
downloadbcm5719-llvm-a9c929e18f37474960a151f82db2876ce860ff85.tar.gz
bcm5719-llvm-a9c929e18f37474960a151f82db2876ce860ff85.zip
[ORC][RPC] Fix some bugs in the callB primitive.
Still no unit test due to synchronization bugs on s390. These issues were discovered in an out-of-tree utility. llvm-svn: 280163
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h b/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
index 2e7b7b8b25c..f061fff405b 100644
--- a/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
+++ b/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
@@ -536,13 +536,13 @@ public:
/// handling responses and incoming calls.
template <typename Func, typename... ArgTs>
typename Func::ErrorReturn callB(ChannelT &C, const ArgTs &... Args) {
- if (auto FutureResOrErr = callNBWithSeq(C, Args...)) {
+ if (auto FutureResOrErr = callNBWithSeq<Func>(C, Args...)) {
if (auto Err = C.send()) {
abandonOutstandingResults();
- Func::consumeAbandoned(*FutureResOrErr);
+ Func::consumeAbandoned(FutureResOrErr->first);
return std::move(Err);
}
- return FutureResOrErr->get();
+ return FutureResOrErr->first.get();
} else
return FutureResOrErr.takeError();
}
OpenPOWER on IntegriCloud