]> granicus.if.org Git - llvm/commitdiff
[Orc][RPC] Remove a couple of redundant calls to abandonAllPendingResponses.
authorLang Hames <lhames@gmail.com>
Sun, 29 Jan 2017 00:51:17 +0000 (00:51 +0000)
committerLang Hames <lhames@gmail.com>
Sun, 29 Jan 2017 00:51:17 +0000 (00:51 +0000)
appendCallAsync, which all RPC call functions ultimately build on, will call
abandonAllPendingResponses on channel error. These extra calls are redundant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@293405 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ExecutionEngine/Orc/RPCUtils.h

index 272b480565b38a520d2a100c10b0f251ec1a033e..8dd396672ee061621bac56e271314d8ace5a4b74 100644 (file)
@@ -1155,7 +1155,6 @@ public:
               return Error::success();
             },
             Args...)) {
-      this->abandonPendingResponses();
       RTraits::consumeAbandoned(FutureResult.get());
       return std::move(Err);
     }
@@ -1188,12 +1187,6 @@ public:
   typename detail::ResultTraits<AltRetT>::ErrorReturnType
   callB(const ArgTs &... Args) {
     if (auto FutureResOrErr = callNB<Func>(Args...)) {
-      if (auto Err = this->C.send()) {
-        this->abandonPendingResponses();
-        detail::ResultTraits<typename Func::ReturnType>::consumeAbandoned(
-            std::move(FutureResOrErr->get()));
-        return std::move(Err);
-      }
       return FutureResOrErr->get();
     } else
       return FutureResOrErr.takeError();