Skip to content

Commit abd362d

Browse files
committed
[MLIR] Fix mlirExecutionEngineLookup throwing assert on lookup fail on debug
1 parent b6be53d commit abd362d

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

mlir/lib/CAPI/ExecutionEngine/ExecutionEngine.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -85,18 +85,20 @@ mlirExecutionEngineInvokePacked(MlirExecutionEngine jit, MlirStringRef name,
8585

8686
extern "C" void *mlirExecutionEngineLookupPacked(MlirExecutionEngine jit,
8787
MlirStringRef name) {
88-
auto expectedFPtr = unwrap(jit)->lookupPacked(unwrap(name));
89-
if (!expectedFPtr)
88+
auto optionalFPtr =
89+
llvm::expectedToOptional(unwrap(jit)->lookupPacked(unwrap(name)));
90+
if (!optionalFPtr)
9091
return nullptr;
91-
return reinterpret_cast<void *>(*expectedFPtr);
92+
return reinterpret_cast<void *>(*optionalFPtr);
9293
}
9394

9495
extern "C" void *mlirExecutionEngineLookup(MlirExecutionEngine jit,
9596
MlirStringRef name) {
96-
auto expectedFPtr = unwrap(jit)->lookup(unwrap(name));
97-
if (!expectedFPtr)
97+
auto optionalFPtr =
98+
llvm::expectedToOptional(unwrap(jit)->lookup(unwrap(name)));
99+
if (!optionalFPtr)
98100
return nullptr;
99-
return reinterpret_cast<void *>(*expectedFPtr);
101+
return *optionalFPtr;
100102
}
101103

102104
extern "C" void mlirExecutionEngineRegisterSymbol(MlirExecutionEngine jit,

0 commit comments

Comments
 (0)