llvm-project/llvm/lib/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.cpp
Nico Weber ca94d0ec0c Revert 266581 (and follow-up 266588), it doesn't build on Windows.
Three problems:
1. <future> can't be easily used.  If you must use it, see
   include/Support/ThreadPool.h for how.
2. constexpr problems, even after 266588.
3. Move assignment operators can't be defaulted in MSVC2013.

llvm-svn: 266615
2016-04-18 13:57:08 +00:00

64 lines
1.7 KiB
C++

//===------- OrcRemoteTargetRPCAPI.cpp - ORC Remote API utilities ---------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#include "llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h"
namespace llvm {
namespace orc {
namespace remote {
#define PROCNAME(X) \
case X ## Id: \
return #X
const char *OrcRemoteTargetRPCAPI::getJITProcIdName(JITProcId Id) {
switch (Id) {
case InvalidId:
return "*** Invalid JITProcId ***";
PROCNAME(CallIntVoid);
PROCNAME(CallIntVoidResponse);
PROCNAME(CallMain);
PROCNAME(CallMainResponse);
PROCNAME(CallVoidVoid);
PROCNAME(CallVoidVoidResponse);
PROCNAME(CreateRemoteAllocator);
PROCNAME(CreateIndirectStubsOwner);
PROCNAME(DeregisterEHFrames);
PROCNAME(DestroyRemoteAllocator);
PROCNAME(DestroyIndirectStubsOwner);
PROCNAME(EmitIndirectStubs);
PROCNAME(EmitIndirectStubsResponse);
PROCNAME(EmitResolverBlock);
PROCNAME(EmitTrampolineBlock);
PROCNAME(EmitTrampolineBlockResponse);
PROCNAME(GetSymbolAddress);
PROCNAME(GetSymbolAddressResponse);
PROCNAME(GetRemoteInfo);
PROCNAME(GetRemoteInfoResponse);
PROCNAME(ReadMem);
PROCNAME(ReadMemResponse);
PROCNAME(RegisterEHFrames);
PROCNAME(ReserveMem);
PROCNAME(ReserveMemResponse);
PROCNAME(RequestCompile);
PROCNAME(RequestCompileResponse);
PROCNAME(SetProtections);
PROCNAME(TerminateSession);
PROCNAME(WriteMem);
PROCNAME(WritePtr);
};
return nullptr;
}
#undef PROCNAME
} // end namespace remote
} // end namespace orc
} // end namespace llvm