diff --git a/flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp b/flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp index 63eac46a99771..0c1424d11b515 100644 --- a/flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp +++ b/flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp @@ -66,8 +66,12 @@ LogicalResult registerKernel(cuf::RegisterKernelOp op, llvm::FunctionType::get( ptrTy, ArrayRef({ptrTy, ptrTy, ptrTy}), false)); llvm::Value *modulePtr = moduleTranslation.lookupValue(op.getModulePtr()); + if (!modulePtr) + return op.emitError() << "Couldn't find the module ptr"; llvm::Function *fctSym = moduleTranslation.lookupFunction(op.getKernelName().str()); + if (!fctSym) + return op.emitError() << "Couldn't find kernel name symbol"; builder.CreateCall(fct, {modulePtr, fctSym, getOrCreateFunctionName( module, builder, op.getKernelModuleName().str(),