================ @@ -377,10 +379,17 @@ llvm::LaunchKernel::createKernelLaunch(mlir::gpu::LaunchFuncOp op, if (!binary) return op.emitError() << "Couldn't find the binary: " << binaryIdentifier; + auto binaryVar = dyn_cast<llvm::GlobalVariable>(binary); + llvm::Constant *binaryInit = binaryVar->getInitializer(); + auto binaryDataSeq = dyn_cast<llvm::ConstantDataSequential>(binaryInit); ---------------- fabianmcg wrote:
Some form of check must be placed on the pointers: ```suggestion auto binaryVar = dyn_cast<llvm::GlobalVariable>(binary); assert(binaryVar && "expected a global variable"); llvm::Constant *binaryInit = binaryVar->getInitializer(); auto binaryDataSeq = dyn_cast_or_null<llvm::ConstantDataSequential>(binaryInit); assert(binaryDataSeq && "expected a valid initializer"); ``` https://github.com/llvm/llvm-project/pull/71430 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits