TVMError: Do not have a default for tir.ProducerLoad when developing sample_op

I am developing an op for llvm target with dynamic output shape. I am getting the below error when I try to run test_dynamic_op_level3.py in the above PR

  File "test_dynamic_op_level3.py", line 34, in verify_func
    intrp = relay.create_executor(kind, mod=mod, ctx=ctx, target=target)
  File "/home/ubuntu/tvm/python/tvm/relay/build_module.py", line 459, in create_executor
    return VMExecutor(mod, ctx, target)
  File "/home/ubuntu/tvm/python/tvm/relay/backend/vm.py", line 258, in __init__
    self.executable = compile(mod, target)
  File "/home/ubuntu/tvm/python/tvm/relay/backend/vm.py", line 70, in compile
    compiler.codegen()
  File "/home/ubuntu/tvm/python/tvm/relay/backend/vm.py", line 140, in codegen
    self._codegen()
  File "/home/ubuntu/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
    raise get_last_ffi_error()
tvm._ffi.base.TVMError: Traceback (most recent call last):
  [bt] (8) /home/ubuntu/tvm/build/libtvm.so(tvm::codegen::CodeGenCPU::VisitStmt_(tvm::tir::AssertStmtNode const*)+0x374) [0x7f310e6fd254]
  [bt] (7) /home/ubuntu/tvm/build/libtvm.so(tvm::codegen::CodeGenLLVM::VisitStmt_(tvm::tir::AssertStmtNode const*)+0x76) [0x7f310e710596]
  [bt] (6) /home/ubuntu/tvm/build/libtvm.so(tvm::tir::StmtFunctor<void (tvm::tir::Stmt const&)>::VisitStmt(tvm::tir::Stmt const&)+0x7f) [0x7f310da8a93f]
  [bt] (5) /home/ubuntu/tvm/build/libtvm.so(tvm::codegen::CodeGenCPU::VisitStmt_(tvm::tir::AssertStmtNode const*)+0x3d) [0x7f310e6fcf1d]
  [bt] (4) /home/ubuntu/tvm/build/libtvm.so(tvm::tir::ExprFunctor<llvm::Value* (tvm::PrimExpr const&)>::VisitExpr(tvm::PrimExpr const&)+0x75) [0x7f310e6f4565]
  [bt] (3) /home/ubuntu/tvm/build/libtvm.so(tvm::codegen::CodeGenLLVM::VisitExpr_(tvm::tir::EQNode const*)+0x28) [0x7f310e712978]
  [bt] (2) /home/ubuntu/tvm/build/libtvm.so(tvm::tir::ExprFunctor<llvm::Value* (tvm::PrimExpr const&)>::VisitExpr(tvm::PrimExpr const&)+0x75) [0x7f310e6f4565]
  [bt] (1) /home/ubuntu/tvm/build/libtvm.so(tvm::tir::ExprFunctor<llvm::Value* (tvm::PrimExpr const&)>::VisitExprDefault_(tvm::runtime::Object const*)+0x87) [0x7f310e6ed367]
  [bt] (0) /home/ubuntu/tvm/build/libtvm.so(+0x11d8be2) [0x7f310e6ecbe2]
  File "/home/ubuntu/tvm/include/tvm/tir/expr_functor.h", line 155
TVMError: Do not have a default for tir.ProducerLoad

I am finding it a bit tricky to debug this. Any suggestions ?

1 Like