code: def _hash_serialized_compile_options(hash_obj, compile_options_obj):
      # Do not mess with the original CompileOptions object since it is passed to
      # the compiler. Create a deep copy for the purpose of cache key generation.
      compile_options_copy = copy.deepcopy(compile_options_obj)
  
      # Certain debug options do not affect the compile result and thus, should not
      # be part of the cache key as their inclusion will result in unnecessary cache
      # misses. Clear them here by setting bool values to False, ints to 0, and
      # strings to empty. The exact values used to clear are not relevant as long
      # as the same values are used every time for each field.
      debug_options = (
          compile_options_copy.executable_build_options.debug_options
      )
      # LINT.IfChange(debug_options)
      debug_options.xla_force_host_platform_device_count = 0
      debug_options.xla_dump_to = ""
      debug_options.xla_dump_hlo_module_re = ""
      debug_options.xla_dump_hlo_pass_re = ""
      debug_options.xla_dump_hlo_as_text = False
      debug_options.xla_dump_hlo_as_proto = False
      debug_options.xla_dump_hlo_as_dot = False
      debug_options.xla_dump_hlo_as_url = False
      debug_options.xla_dump_hlo_as_html = False
      debug_options.xla_dump_fusion_visualization = False
      debug_options.xla_dump_hlo_snapshots = False
      debug_options.xla_dump_max_hlo_modules = False
      debug_options.xla_dump_module_metadata = False
      debug_options.xla_dump_compress_protos = False
      debug_options.xla_dump_hlo_as_long_text = False
      debug_options.xla_dump_disable_metadata = False
      debug_options.xla_dump_hlo_pipeline_re = ""
      # LINT.ThenChange(:xla_flags)
  
      return hash_obj.update(compile_options_copy.SerializeAsString())
  
imports: import copy
  import hashlib
  import io
  import logging
  import os
  import sys
  from jax._src import config
  from jax._src.lib import version_str
  from jax._src.lib import xla_client
  from jax._src.lib.mlir import ir
  from jax._src.lib.mlir import passmanager
  import numpy
label_desc: Use image node_id 11 for calling a global function with example usage: _hash_serialized_compile_options(hash_obj, compile_options_obj) and returns: hash_obj