]> granicus.if.org Git - llvm/commit
[ORC] Add RPC and serialization support for Errors and Expecteds.
authorLang Hames <lhames@gmail.com>
Thu, 13 Apr 2017 03:51:35 +0000 (03:51 +0000)
committerLang Hames <lhames@gmail.com>
Thu, 13 Apr 2017 03:51:35 +0000 (03:51 +0000)
commited576a186fb8b5d33b1fba26f2e825182603f9f2
treefe3f97301991f415d9726523434bec8fd38e9879
parent55525ab26b9c8eb8aa954826f2dc8187399934ca
[ORC] Add RPC and serialization support for Errors and Expecteds.

This patch allows Error and Expected types to be passed to and returned from
RPC functions.

Serializers and deserializers for custom error types (types deriving from the
ErrorInfo class template) can be registered with the SerializationTraits for
a given channel type (see registerStringError in RPCSerialization.h for an
example), allowing a given custom type to be sent/received. Unregistered types
will be serialized/deserialized as StringErrors using the custom type's log
message as the error string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@300167 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ExecutionEngine/Orc/OrcError.h
include/llvm/ExecutionEngine/Orc/RPCSerialization.h
include/llvm/ExecutionEngine/Orc/RPCUtils.h
include/llvm/Support/Error.h
lib/ExecutionEngine/Orc/OrcError.cpp
unittests/ExecutionEngine/Orc/RPCUtilsTest.cpp