code: def dot_product_16x4_u8i8i32_vnni(
      A: T.Buffer((4,), "uint8", offset_factor=1),
      B: T.Buffer((16, 4), "int8", offset_factor=1),
      C: T.Buffer((16,), "int32", offset_factor=1),
  ) -> None:
      with T.block("root"):
          T.reads(C[0:16], A[0:4], B[0:16, 0:4])
          T.writes(C[0:16])
  
          A_u8x4 = A.vload([0], "uint8x4")
          A_i32 = T.reinterpret(A_u8x4, dtype="int32")
  
          B_i8x64 = B.vload([0, 0], dtype="int8x64")
          B_i32x16 = T.reinterpret(B_i8x64, dtype="int32x16")
          C_i32x16 = C.vload([0], dtype="int32x16")
  
          C[T.ramp(T.int32(0), 1, 16)] = T.call_llvm_pure_intrin(
              T.llvm_lookup_intrinsic_id(
                  "llvm.x86.avx512.vpdpbusd.512"
              ),
              T.uint32(3),
              C_i32x16,
              T.broadcast(A_i32, 16),
              B_i32x16,
              dtype="int32x16",
          )
  
imports: from tvm.script import tir
  from ..None import TensorIntrin
label_desc: Use image node_id 2 for calling a global function with example usage: dot_product_16x4_u8i8i32_vnni(A, B, C) without return types