code: def test_1d_decompose_padding():
      @T.prim_func
      def before_decompose(
          x: T.Buffer(128, "int32"), y: T.Buffer(140, "int32")
      ):
          for i in range(140):
              with T.block("block"):
                  vi = T.axis.remap("S", [i])
                  y[vi] = T.if_then_else(
                      vi >= 6 and vi < 134, x[vi - 6], 0, dtype="int32"
                  )
  
      @T.prim_func
      def after_decompose(
          x: T.Buffer(128, "int32"), y: T.Buffer(140, "int32")
      ):
          for i in T.serial(140):
              with T.block("block_pad_const"):
                  vi = T.axis.spatial(140, i)
                  T.reads()
                  T.writes(y[vi])
                  y[vi] = 0
          for i in T.serial(128):
              with T.block("block"):
                  vi = T.axis.spatial(128, i)
                  T.reads(x[vi])
                  T.writes(y[vi + 6])
                  y[vi + 6] = x[vi]
  
      sch = tir.Schedule(before_decompose, debug_mask="all")
      block = sch.get_block("block")
      sch.decompose_padding(block, sch.get_loops(block)[0])
      check_decompose_padding(
          before_decompose,
          sch.mod["main"],
          after_decompose,
          check_run=False,
      )
  
file_path: tvm/tests/python/tir-schedule/test_tir_schedule_decompose_padding.py
imports: import numpy
  import tvm
  import tvm.testing
  from tvm import tir
  from tvm.tir.schedule.testing import assert_structural_equal_ignore_global_symbol
  from tvm.script import tir
label_desc: Use image node_id 3 for calling a global function with example usage: test_1d_decompose_padding() without return types