code: def verify_transpose(in_shape, axes):
      A = te.placeholder(shape=in_shape, name="A")
      B = topi.transpose(A, axes)
  
      def check_device(target, dev):
          print("Running on target: %s" % target)
          with tvm.target.Target(target):
              s = tvm.topi.testing.get_injective_schedule(target)(B)
          foo = tvm.build(s, [A, B], target, name="transpose")
          data_npy = (
              np.arange(np.prod(in_shape))
              .reshape(in_shape)
              .astype(A.dtype)
          )
          out_npy = data_npy.transpose(axes)
          data_nd = tvm.nd.array(data_npy, dev)
          out_nd = tvm.nd.empty(
              out_npy.shape, device=dev, dtype=B.dtype
          )
          foo(data_nd, out_nd)
          tvm.testing.assert_allclose(out_nd.numpy(), out_npy)
  
      for target, dev in tvm.testing.enabled_targets():
          check_device(target, dev)
  
imports: import numpy
  import pytest
  import tvm
  from tvm import te
  from tvm import topi
  from tvm import relay
  import tvm.topi.testing
  from tvm.contrib.nvcc import have_fp16
  import tvm.testing
label_desc: Use image node_id 3 for calling a global function with example usage: verify_transpose(in_shape, axes) without return types