code: def opaque_access(a: T.handle, b: T.handle) -> None:
      A = T.match_buffer(a, (32, 64, 128))
      B = T.match_buffer(b, (64, 64, 64))
      for i, j, k in T.grid(2, 64, 8):
          with T.block():
              T.reads([])
              T.writes(A[i * 16 : i * 16 + 16, j, k * 16 : k * 16 + 16])
              sub_A = T.match_buffer(
                  A[i * 16 : i * 16 + 16, j, k * 16 : k * 16 + 16],
                  (16, 1, 16),
                  strides=[8192, 128, 1],
                  offset_factor=1,
              )
              T.evaluate(
                  intrin_test(
                      sub_A.data,
                      sub_A.elem_offset,
                      sub_A.strides[0],
                      sub_A.strides[1],
                      sub_A.shape[0],
                      sub_A.shape[1],
                  )
              )
      for i, j, k in T.grid(64, 2, 8):
          with T.block():
              Bs_0 = T.int32()
              Bs_1 = T.int32()
              T.reads([])
              T.writes(B[i, j * 32 : j * 32 + 32, k * 8 : k * 8 + 8])
              sub_B = T.match_buffer(
                  B[i, j * 32 : j * 32 + 32, k * 8 : k * 8 + 8],
                  (32, 8),
                  strides=[Bs_0, Bs_1],
                  offset_factor=1,
              )
              T.evaluate(
                  intrin_test(
                      sub_B.data,
                      sub_B.elem_offset,
                      sub_B.strides[0],
                      sub_B.strides[1],
                      sub_B.shape[0],
                      sub_B.shape[1],
                  )
              )
  
imports: import pytest
  import tvm
  import tvm.testing
  from tvm.script import tir
label_desc: Use image node_id 6 for calling a global function with example usage: opaque_access(a, b) without return types