forked from OSchip/llvm-project
[Orc][Modules] Fix Modules build fallout from a34680a33e
.
In a34680a33e
OrcError.h and Orc/RPC/*.h were split out from the rest of
ExecutionEngine in order to eliminate false dependencies for remote JIT
targets (see https://reviews.llvm.org/D68732), however this broke modules
builds (see https://reviews.llvm.org/D69817).
This patch splits these headers out into a separate module, LLVM_OrcSupport,
in order to fix the modules build.
Fixes <rdar://56377508>.
This commit is contained in:
parent
5c5cf899ef
commit
76bcbaafab
|
@ -14,6 +14,8 @@
|
|||
#define LLVM_EXECUTIONENGINE_ORC_ORCERROR_H
|
||||
|
||||
#include "llvm/Support/Error.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include <string>
|
||||
#include <system_error>
|
||||
|
||||
namespace llvm {
|
||||
|
|
|
@ -169,12 +169,31 @@ module LLVM_ExecutionEngine {
|
|||
|
||||
// FIXME: These exclude directives were added as a workaround for
|
||||
// <rdar://problem/29247092> and should be removed once it is fixed.
|
||||
exclude header "ExecutionEngine/Orc/RawByteChannel.h"
|
||||
exclude header "ExecutionEngine/Orc/RPCUtils.h"
|
||||
exclude header "ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h"
|
||||
exclude header "ExecutionEngine/Orc/OrcRemoteTargetClient.h"
|
||||
exclude header "ExecutionEngine/Orc/OrcRemoteTargetServer.h"
|
||||
exclude header "ExecutionEngine/Orc/RemoteObjectLayer.h"
|
||||
|
||||
// Exclude headers from LLVM_OrcSupport.
|
||||
exclude header "ExecutionEngine/Orc/OrcError.h"
|
||||
exclude header "ExecutionEngine/Orc/RPC/RPCUtils.h"
|
||||
exclude header "ExecutionEngine/Orc/RPC/RPCSerialization.h"
|
||||
exclude header "ExecutionEngine/Orc/RPC/RawByteChannel.h"
|
||||
|
||||
}
|
||||
|
||||
// Orc utilities that don't depend only on Support (not ExecutionEngine or
|
||||
// IR). This is a workaround for ExecutionEngine's broken layering, and will
|
||||
// be removed in the future.
|
||||
module LLVM_OrcSupport {
|
||||
requires cplusplus
|
||||
|
||||
header "ExecutionEngine/Orc/OrcError.h"
|
||||
header "ExecutionEngine/Orc/RPC/RPCUtils.h"
|
||||
header "ExecutionEngine/Orc/RPC/RPCSerialization.h"
|
||||
header "ExecutionEngine/Orc/RPC/RawByteChannel.h"
|
||||
|
||||
export *
|
||||
}
|
||||
|
||||
module LLVM_Pass {
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
#include "llvm/Support/ErrorHandling.h"
|
||||
#include "llvm/Support/ManagedStatic.h"
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
using namespace llvm;
|
||||
using namespace llvm::orc;
|
||||
|
||||
|
|
|
@ -11,6 +11,11 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/ExecutionEngine/Orc/RPC/RPCUtils.h"
|
||||
#include "llvm/Support/Error.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
|
||||
#include <system_error>
|
||||
#include <string>
|
||||
|
||||
char llvm::orc::rpc::RPCFatalError::ID = 0;
|
||||
char llvm::orc::rpc::ConnectionClosed::ID = 0;
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include "llvm/ADT/Twine.h"
|
||||
#include "llvm/Support/ErrorHandling.h"
|
||||
#include "llvm/Support/ManagedStatic.h"
|
||||
#include "llvm/Support/Signals.h"
|
||||
#include <system_error>
|
||||
|
||||
using namespace llvm;
|
||||
|
@ -103,11 +104,13 @@ std::error_code errorToErrorCode(Error Err) {
|
|||
#if LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
void Error::fatalUncheckedError() const {
|
||||
dbgs() << "Program aborted due to an unhandled Error:\n";
|
||||
if (getPtr())
|
||||
if (getPtr()) {
|
||||
getPtr()->log(dbgs());
|
||||
else
|
||||
dbgs() << "\n";
|
||||
}else
|
||||
dbgs() << "Error value was Success. (Note: Success values must still be "
|
||||
"checked prior to being destroyed).\n";
|
||||
PrintStackTrace();
|
||||
abort();
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue