code: def test_immutability():
      simple_net = relay.nn.conv2d(
          data=relay.var(
              "data", relay.TensorType((1, 3, 224, 224), "float32")
          ),
          weight=relay.var("weight"),
          kernel_size=(5, 5),
          channels=3,
          padding=(1, 1),
      )
      simple_net = relay.Function(
          relay.analysis.free_vars(simple_net), simple_net
      )
      mod, _ = create_workload(simple_net)
  
      old_mod = mod
  
      with tvm.transform.PassContext(opt_level=4):
          with tvm.target.Target("llvm"):
              seq = tvm.transform.Sequential(
                  passes=[transform.ToBasicBlockNormalForm()],
                  opt_level=4,
              )
              new_mod = seq(mod)
  
      assert old_mod.astext() == mod.astext()
      assert old_mod.astext() != new_mod.astext()
  
imports: import pytest
  import numpy
  import tvm
  from tvm import te
  from tvm import relay
  from tvm.relay.analysis import detect_feature
  from tvm.relay import op, create_executor, transform
  from tvm.relay.prelude import Prelude
  from tvm.relay.testing import count, create_workload
  from tvm.relay.analysis import Feature
  from tvm.relay.analysis import check_basic_block_normal_form
label_desc: Use image node_id 15 for calling a global function with example usage: test_immutability() without return types