Real time indexing in TVM

Hi,

Recently I want to use tvm to generate code that use real time value as offset of a compute. some example code:

def foo(A, M, N, offset):
    # A: MxN, offset: tvm.placeholder((1, 1))
    B = tvm.compute(
               (M, N),
               lambda x, y: 1.0 / (A[x, offset[0, 0]] * A[x, offset[0, 0]] + 1.0),
               name='my_dynamic_stuff')
    return B

This is giving me:

TVMError: Check failed: args[i].type() == Int(32): Args to call to halide function must be type Int(32)

Not sure if I am doing the right thing here? Does TVM support such compute pattern?

p.s. we can quickly fix that halide msg as well