code: def test_opencl_ceil_log2(target):
      def _check(target, n, dtype):
          with tvm.target.Target(target):
              C = te.compute(
                  (n,),
                  lambda i: tvm.topi.ceil_log2(i),
                  name="C",
              )
              func = te.create_prim_func([C])
              sch = tvm.tir.Schedule(func)
              (x,) = sch.get_loops(sch.get_block("C"))
              sch.bind(x, "threadIdx.x")
  
              fun = tvm.build(sch.mod, target=target)
              assembly = fun.imported_modules[0].get_source()
              if "adreno" in target:
                  pattern = "convert_float"
              else:
                  pattern = "convert_double"
              assert assembly.count(pattern) != 0
  
      _check(target, 32, "float32")
  
file_path: tvm/tests/python/codegen/test_target_codegen_opencl.py
imports: import tvm
  from tvm import te, relay
  import tvm.testing
  import re
  import pytest
  import numpy
label_desc: Use image node_id 6 for calling a global function with example usage: test_opencl_ceil_log2(target) without return types