code: def register_min_func(func, type_name):
      """Register the function that returns the minimum representable value of type_name.
  
      Operators such as max pooling and argmax require the minimum
      finite value representable by the datatype the op operating on.
      Users can use this function to register a function that returns a TIR expression node
      outputting the minimum representable value of their custom data type.
  
      Users should use create_min_lower_func to create their lowering function. It
      should serve most use-cases.
  
      Note: for special cases when it is known that the custom datatype is representable
      by a float, the user can create their own lowering func that returns a FloatImm.
      The benefits are allowing optimizations such as rewrites to work as expected on custom
      datatypes.
  
      Parameters
      ----------
      func : function
          Input is an integer num_bits, should return a TIR expression node that
          represents a scalar tensor of type custom[type_name]num_bits with the minimum
          representable value.
  
      type_name : str
          The name of the custom datatype, e.g. posites2 (but not custom[posites2]32).
      """
      _register_func("tvm.datatype.min." + type_name, func)
  
file_path: tvm/python/tvm/target/datatype.py
imports: import tvm
  from tvm.runtime import convert, DataType
  from tvm.tir.expr import Call, Cast, FloatImm, BinaryOpExpr
  from tvm.tir.op import call_pure_extern
  from tvm._ffi import register_func
  from tvm.tir import call_intrin
label_desc: Use image node_id 6 for calling a global function with example usage: register_min_func(func, type_name) without return types