1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

[Orc] Add move ops for OrcRemoteTargetClient and OrcRemoteTargetServer to

appease MSVC.

llvm-svn: 266812
This commit is contained in:
Lang Hames 2016-04-19 20:22:50 +00:00
parent 5607676c28
commit 1607a81238
2 changed files with 31 additions and 0 deletions

View File

@ -37,6 +37,25 @@ template <typename ChannelT>
class OrcRemoteTargetClient : public OrcRemoteTargetRPCAPI {
public:
// FIXME: Remove move/copy ops once MSVC supports synthesizing move ops.
OrcRemoteTargetClient(const OrcRemoteTargetClient&) = delete;
OrcRemoteTargetClient& operator=(const OrcRemoteTargetClient&) = delete;
OrcRemoteTargetClient(OrcRemoteTargetClient &&Other)
: Channel(Other.Channel),
ExistingError(std::move(Other.ExistingError)),
RemoteTargetTriple(std::move(Other.RemoteTargetTriple)),
RemotePointerSize(std::move(Other.RemotePointerSize)),
RemotePageSize(std::move(Other.RemotePageSize)),
RemoteTrampolineSize(std::move(Other.RemoteTrampolineSize)),
RemoteIndirectStubSize(std::move(Other.RemoteIndirectStubSize)),
AllocatorIds(std::move(Other.AllocatorIds)),
IndirectStubOwnerIds(std::move(Other.IndirectStubOwnerIds)),
CompileCallback(std::move(Other.CompileCallback)) {}
OrcRemoteTargetClient& operator=(OrcRemoteTargetClient&&) = delete;
/// Remote memory manager.
class RCMemoryManager : public RuntimeDyld::MemoryManager {
public:

View File

@ -45,6 +45,18 @@ public:
EHFramesRegister(std::move(EHFramesRegister)),
EHFramesDeregister(std::move(EHFramesDeregister)) {}
// FIXME: Remove move/copy ops once MSVC supports synthesizing move ops.
OrcRemoteTargetServer(const OrcRemoteTargetServer&) = delete;
OrcRemoteTargetServer& operator=(const OrcRemoteTargetServer&) = delete;
OrcRemoteTargetServer(OrcRemoteTargetServer &&Other)
: Channel(Other.Channel),
SymbolLookup(std::move(Other.SymbolLookup)),
EHFramesRegister(std::move(Other.EHFramesRegister)),
EHFramesDeregister(std::move(Other.EHFramesDeregister)) {}
OrcRemoteTargetServer& operator=(OrcRemoteTargetServer&&) = delete;
std::error_code handleKnownFunction(JITFuncId Id) {
typedef OrcRemoteTargetServer ThisT;