Skip to content

Commit 772ff04

Browse files
authored
[mlir][ExecutionEngine] propagate errors in mlirExecutionEngineCreate (#170592)
1 parent 997f981 commit 772ff04

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

mlir/lib/CAPI/ExecutionEngine/ExecutionEngine.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,15 @@ mlirExecutionEngineCreate(MlirModule op, int optLevel, int numPaths,
3838

3939
auto tmBuilderOrError = llvm::orc::JITTargetMachineBuilder::detectHost();
4040
if (!tmBuilderOrError) {
41-
llvm::errs() << "Failed to create a JITTargetMachineBuilder for the host\n";
41+
llvm::errs() << "Failed to create a JITTargetMachineBuilder for the host "
42+
"because: \n";
43+
consumeError(tmBuilderOrError.takeError());
4244
return MlirExecutionEngine{nullptr};
4345
}
4446
auto tmOrError = tmBuilderOrError->createTargetMachine();
4547
if (!tmOrError) {
46-
llvm::errs() << "Failed to create a TargetMachine for the host\n";
48+
llvm::errs() << "Failed to create a TargetMachine for the host because: \n";
49+
consumeError(tmOrError.takeError());
4750
return MlirExecutionEngine{nullptr};
4851
}
4952

@@ -62,6 +65,7 @@ mlirExecutionEngineCreate(MlirModule op, int optLevel, int numPaths,
6265
jitOptions.enableObjectDump = enableObjectDump;
6366
auto jitOrError = ExecutionEngine::create(unwrap(op), jitOptions);
6467
if (!jitOrError) {
68+
llvm::errs() << "Failed to create an ExecutionEngine because: \n";
6569
consumeError(jitOrError.takeError());
6670
return MlirExecutionEngine{nullptr};
6771
}

mlir/test/python/execution_engine.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ def testInvalidModule():
7171
func.func @foo() { return }
7272
"""
7373
)
74+
# CHECK: error: cannot be converted to LLVM IR: missing `LLVMTranslationDialectInterface` registration for dialect for op: func.func
7475
# CHECK: Got RuntimeError: Failure while creating the ExecutionEngine.
7576
try:
7677
execution_engine = ExecutionEngine(module)

0 commit comments

Comments
 (0)