code: def expected_layout_attr(
      A: T.Buffer((128, 128), "float32"),
      B: T.Buffer((128, 128), "float32"),
      D: T.Buffer((128, 128), "float32"),
  ) -> None:
      T.func_attr(
          {
              "global_symbol": "main",
              "tir.noalias": True,
              "layout_free_buffers": [1],
          }
      )
      C = T.alloc_buffer([128, 128], dtype="float32")
      for i0, i1, i2 in T.grid(128, 128, 128):
          with T.block("C"):
              x, y, k = T.axis.remap("SSR", [i0, i1, i2])
              with T.init():
                  C[x, y] = T.float32(0)
              C[x, y] = C[x, y] + A[x, k] * B[y, k]
      for i0, i1 in T.grid(128, 128):
          with T.block("D"):
              T.block_attr({"layout_free_placeholders": [C]})
              x, y = T.axis.remap("SS", [i0, i1])
              D[x, y] = C[x, y] + T.float32(1)
  
imports: import numpy
  import tvm
  import tvm.testing
  from tvm import te, tir, topi, relay
  from tvm.script import tir
  import pytest
label_desc: Use image node_id 30 for calling a global function with example usage: expected_layout_attr(A, B, D) without return types