import("../third_party.gni")
spirv_tools = "../externals/spirv-tools"
spirv_headers = "../externals/spirv-headers"

template("spvtools_core_tables") {
  assert(defined(invoker.version), "Need version in $target_name generation.")

  action("spvtools_core_tables_" + target_name) {
    script = "${spirv_tools}/utils/generate_grammar_tables.py"

    version = invoker.version

    core_json_file =
        "${spirv_headers}/include/spirv/$version/spirv.core.grammar.json"
    core_insts_file = "${target_gen_dir}/core.insts-$version.inc"
    operand_kinds_file = "${target_gen_dir}/operand.kinds-$version.inc"
    debuginfo_insts_file =
        "${spirv_tools}/source/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file =
        "${spirv_tools}/source/extinst.opencl.debuginfo.100.grammar.json"

    sources = [
      cldebuginfo100_insts_file,
      core_json_file,
      debuginfo_insts_file,
    ]
    outputs = [
      core_insts_file,
      operand_kinds_file,
    ]
    args = [
      "--spirv-core-grammar",
      rebase_path(core_json_file, root_build_dir),
      "--core-insts-output",
      rebase_path(core_insts_file, root_build_dir),
      "--extinst-debuginfo-grammar",
      rebase_path(debuginfo_insts_file, root_build_dir),
      "--extinst-cldebuginfo100-grammar",
      rebase_path(cldebuginfo100_insts_file, root_build_dir),
      "--operand-kinds-output",
      rebase_path(operand_kinds_file, root_build_dir),
    ]
  }
}

template("spvtools_core_enums") {
  assert(defined(invoker.version), "Need version in $target_name generation.")

  action("spvtools_core_enums_" + target_name) {
    script = "${spirv_tools}/utils/generate_grammar_tables.py"

    version = invoker.version

    core_json_file =
        "${spirv_headers}/include/spirv/$version/spirv.core.grammar.json"
    debuginfo_insts_file =
        "${spirv_tools}/source/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file =
        "${spirv_tools}/source/extinst.opencl.debuginfo.100.grammar.json"

    extension_enum_file = "${target_gen_dir}/extension_enum.inc"
    extension_map_file = "${target_gen_dir}/enum_string_mapping.inc"

    args = [
      "--spirv-core-grammar",
      rebase_path(core_json_file, root_build_dir),
      "--extinst-debuginfo-grammar",
      rebase_path(debuginfo_insts_file, root_build_dir),
      "--extinst-cldebuginfo100-grammar",
      rebase_path(cldebuginfo100_insts_file, root_build_dir),
      "--extension-enum-output",
      rebase_path(extension_enum_file, root_build_dir),
      "--enum-string-mapping-output",
      rebase_path(extension_map_file, root_build_dir),
    ]
    inputs = [
      core_json_file,
      debuginfo_insts_file,
      cldebuginfo100_insts_file,
    ]
    outputs = [
      extension_enum_file,
      extension_map_file,
    ]
  }
}

template("spvtools_glsl_tables") {
  assert(defined(invoker.version), "Need version in $target_name generation.")

  action("spvtools_glsl_tables_" + target_name) {
    script = "${spirv_tools}/utils/generate_grammar_tables.py"

    version = invoker.version

    core_json_file =
        "${spirv_headers}/include/spirv/$version/spirv.core.grammar.json"
    glsl_json_file = "${spirv_headers}/include/spirv/${version}/extinst.glsl.std.450.grammar.json"
    debuginfo_insts_file =
        "${spirv_tools}/source/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file =
        "${spirv_tools}/source/extinst.opencl.debuginfo.100.grammar.json"

    glsl_insts_file = "${target_gen_dir}/glsl.std.450.insts.inc"

    args = [
      "--spirv-core-grammar",
      rebase_path(core_json_file, root_build_dir),
      "--extinst-debuginfo-grammar",
      rebase_path(debuginfo_insts_file, root_build_dir),
      "--extinst-cldebuginfo100-grammar",
      rebase_path(cldebuginfo100_insts_file, root_build_dir),
      "--extinst-glsl-grammar",
      rebase_path(glsl_json_file, root_build_dir),
      "--glsl-insts-output",
      rebase_path(glsl_insts_file, root_build_dir),
    ]
    inputs = [
      core_json_file,
      glsl_json_file,
      debuginfo_insts_file,
      cldebuginfo100_insts_file,
    ]
    outputs = [
      glsl_insts_file,
    ]
  }
}

template("spvtools_opencl_tables") {
  assert(defined(invoker.version), "Need version in $target_name generation.")

  action("spvtools_opencl_tables_" + target_name) {
    script = "${spirv_tools}/utils/generate_grammar_tables.py"

    version = invoker.version

    core_json_file =
        "${spirv_headers}/include/spirv/$version/spirv.core.grammar.json"
    opencl_json_file = "${spirv_headers}/include/spirv/${version}/extinst.opencl.std.100.grammar.json"
    debuginfo_insts_file =
        "${spirv_tools}/source/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file =
        "${spirv_tools}/source/extinst.opencl.debuginfo.100.grammar.json"

    opencl_insts_file = "${target_gen_dir}/opencl.std.insts.inc"

    args = [
      "--spirv-core-grammar",
      rebase_path(core_json_file, root_build_dir),
      "--extinst-debuginfo-grammar",
      rebase_path(debuginfo_insts_file, root_build_dir),
      "--extinst-cldebuginfo100-grammar",
      rebase_path(cldebuginfo100_insts_file, root_build_dir),
      "--extinst-opencl-grammar",
      rebase_path(opencl_json_file, root_build_dir),
      "--opencl-insts-output",
      rebase_path(opencl_insts_file, root_build_dir),
    ]
    inputs = [
      core_json_file,
      opencl_json_file,
      debuginfo_insts_file,
      cldebuginfo100_insts_file,
    ]
    outputs = [
      opencl_insts_file,
    ]
  }
}

template("spvtools_language_header") {
  assert(defined(invoker.name), "Need name in $target_name generation.")

  action("spvtools_language_header_" + target_name) {
    script = "${spirv_tools}/utils/generate_language_headers.py"

    name = invoker.name
    extinst_output_path = "${target_gen_dir}/${name}.h"

    args = [
      "--extinst-grammar",
      rebase_path(invoker.grammar_file, root_build_dir),
      "--extinst-output-path",
      rebase_path(extinst_output_path, root_build_dir),
    ]
    inputs = [
      invoker.grammar_file,
    ]
    outputs = [
      "${extinst_output_path}",
    ]
  }
}

template("spvtools_vendor_table") {
  assert(defined(invoker.name), "Need name in $target_name generation.")

  action("spvtools_vendor_tables_" + target_name) {
    script = "${spirv_tools}/utils/generate_grammar_tables.py"

    name = invoker.name
    extinst_vendor_grammar =
        "${spirv_tools}/source/extinst.${name}.grammar.json"
    extinst_file = "${target_gen_dir}/${name}.insts.inc"

    args = [
      "--extinst-vendor-grammar",
      rebase_path(extinst_vendor_grammar, root_build_dir),
      "--vendor-insts-output",
      rebase_path(extinst_file, root_build_dir),
      "--vendor-operand-kind-prefix",
      invoker.operand_kind_prefix,
    ]
    inputs = [
      extinst_vendor_grammar,
    ]
    outputs = [
      extinst_file,
    ]
  }
}

action("spvtools_generators_inc") {
  script = "${spirv_tools}/utils/generate_registry_tables.py"

  # TODO(dsinclair): Make work for chrome
  xml_file = "${spirv_headers}/include/spirv/spir-v.xml"
  inc_file = "${target_gen_dir}/generators.inc"

  sources = [
    xml_file,
  ]
  outputs = [
    inc_file,
  ]
  args = [
    "--xml",
    rebase_path(xml_file, root_build_dir),
    "--generator",
    rebase_path(inc_file, root_build_dir),
  ]
}

action("spvtools_build_version") {
  script = "${spirv_tools}/utils/update_build_version.py"

  src_dir = "${spirv_tools}"
  inc_file = "${target_gen_dir}/build-version.inc"

  outputs = [
    inc_file,
  ]
  args = [
    rebase_path(src_dir, root_build_dir),
    rebase_path(inc_file, root_build_dir),
  ]
}

spvtools_core_tables("unified1") {
  version = "unified1"
}
spvtools_core_enums("unified1") {
  version = "unified1"
}
spvtools_glsl_tables("glsl1-0") {
  version = "1.0"
}
spvtools_opencl_tables("opencl1-0") {
  version = "1.0"
}
spvtools_language_header("debuginfo") {
  name = "DebugInfo"
  grammar_file = "${spirv_tools}/source/extinst.debuginfo.grammar.json"
}
spvtools_language_header("cldebuginfo100") {
  name = "OpenCLDebugInfo100"
  grammar_file =
      "${spirv_tools}/source/extinst.opencl.debuginfo.100.grammar.json"
}

spvtools_vendor_tables = [
  [
    "spv-amd-shader-explicit-vertex-parameter",
    "...nil...",
  ],
  [
    "spv-amd-shader-trinary-minmax",
    "...nil...",
  ],
  [
    "spv-amd-gcn-shader",
    "...nil...",
  ],
  [
    "spv-amd-shader-ballot",
    "...nil...",
  ],
  [
    "debuginfo",
    "...nil...",
  ],
  [
    "opencl.debuginfo.100",
    "CLDEBUG100_",
  ],
]

foreach(table_def, spvtools_vendor_tables) {
  spvtools_vendor_table(table_def[0]) {
    name = table_def[0]
    operand_kind_prefix = table_def[1]
  }
}

config("spvtools_public_config") {
  include_dirs = [ "${spirv_tools}/include" ]
}

config("spvtools_internal_config") {
  include_dirs = [
    "${spirv_tools}",
    "$target_gen_dir",
    "${spirv_headers}/include",
  ]

  configs = [ ":spvtools_public_config" ]

  if (is_clang) {
    cflags = [
      "-Wno-implicit-fallthrough",
      "-Wno-newline-eof",
      "-Wno-extra-semi",
      "-Wno-range-loop-analysis",
      "-Wno-conditional-uninitialized",
    ]
  }
}

source_set("spvtools_headers") {
  sources = rebase_path([
                          "include/spirv-tools/instrument.hpp",
                          "include/spirv-tools/libspirv.h",
                          "include/spirv-tools/libspirv.hpp",
                          "include/spirv-tools/linker.hpp",
                          "include/spirv-tools/optimizer.hpp",
                        ],
                        ".",
                        spirv_tools)

  public_configs = [ ":spvtools_public_config" ]
}

third_party("spvtools") {
  public_include_dirs = []
  deps = [
    ":spvtools_core_enums_unified1",
    ":spvtools_core_tables_unified1",
    ":spvtools_generators_inc",
    ":spvtools_glsl_tables_glsl1-0",
    ":spvtools_language_header_cldebuginfo100",
    ":spvtools_language_header_debuginfo",
    ":spvtools_opencl_tables_opencl1-0",
  ]
  foreach(table_def, spvtools_vendor_tables) {
    name = table_def[0]
    deps += [ ":spvtools_vendor_tables_$name" ]
  }

  sources = rebase_path([
                          "source/assembly_grammar.cpp",
                          "source/assembly_grammar.h",
                          "source/binary.cpp",
                          "source/binary.h",
                          "source/cfa.h",
                          "source/diagnostic.cpp",
                          "source/diagnostic.h",
                          "source/disassemble.cpp",
                          "source/disassemble.h",
                          "source/enum_set.h",
                          "source/enum_string_mapping.cpp",
                          "source/enum_string_mapping.h",
                          "source/ext_inst.cpp",
                          "source/ext_inst.h",
                          "source/extensions.cpp",
                          "source/extensions.h",
                          "source/instruction.h",
                          "source/libspirv.cpp",
                          "source/latest_version_glsl_std_450_header.h",
                          "source/latest_version_opencl_std_header.h",
                          "source/latest_version_spirv_header.h",
                          "source/macro.h",
                          "source/name_mapper.cpp",
                          "source/name_mapper.h",
                          "source/opcode.cpp",
                          "source/opcode.h",
                          "source/operand.cpp",
                          "source/operand.h",
                          "source/parsed_operand.cpp",
                          "source/parsed_operand.h",
                          "source/print.cpp",
                          "source/print.h",
                          "source/spirv_constant.h",
                          "source/spirv_definition.h",
                          "source/spirv_endian.cpp",
                          "source/spirv_endian.h",
                          "source/spirv_optimizer_options.cpp",
                          "source/spirv_optimizer_options.h",
                          "source/spirv_target_env.cpp",
                          "source/spirv_target_env.h",
                          "source/spirv_validator_options.cpp",
                          "source/spirv_validator_options.h",
                          "source/table.cpp",
                          "source/table.h",
                          "source/text.cpp",
                          "source/text.h",
                          "source/text_handler.cpp",
                          "source/text_handler.h",
                          "source/util/bit_vector.cpp",
                          "source/util/bit_vector.h",
                          "source/util/bitutils.h",
                          "source/util/hex_float.h",
                          "source/util/ilist.h",
                          "source/util/ilist_node.h",
                          "source/util/make_unique.h",
                          "source/util/parse_number.cpp",
                          "source/util/parse_number.h",
                          "source/util/small_vector.h",
                          "source/util/string_utils.cpp",
                          "source/util/string_utils.h",
                          "source/util/timer.cpp",
                          "source/util/timer.h",
                        ],
                        ".",
                        spirv_tools)

  public_deps = [
    ":spvtools_headers",
    "${spirv_headers}:spv_headers",
  ]

  configs += [ ":spvtools_internal_config" ]
}

third_party("spvtools_val") {
  public_include_dirs = []
  sources = rebase_path([
                          "source/val/basic_block.cpp",
                          "source/val/basic_block.h",
                          "source/val/construct.cpp",
                          "source/val/construct.h",
                          "source/val/decoration.h",
                          "source/val/function.cpp",
                          "source/val/function.h",
                          "source/val/instruction.cpp",
                          "source/val/validate.cpp",
                          "source/val/validate.h",
                          "source/val/validate_adjacency.cpp",
                          "source/val/validate_annotation.cpp",
                          "source/val/validate_arithmetics.cpp",
                          "source/val/validate_atomics.cpp",
                          "source/val/validate_barriers.cpp",
                          "source/val/validate_bitwise.cpp",
                          "source/val/validate_builtins.cpp",
                          "source/val/validate_capability.cpp",
                          "source/val/validate_cfg.cpp",
                          "source/val/validate_composites.cpp",
                          "source/val/validate_constants.cpp",
                          "source/val/validate_conversion.cpp",
                          "source/val/validate_debug.cpp",
                          "source/val/validate_decorations.cpp",
                          "source/val/validate_derivatives.cpp",
                          "source/val/validate_execution_limitations.cpp",
                          "source/val/validate_extensions.cpp",
                          "source/val/validate_function.cpp",
                          "source/val/validate_id.cpp",
                          "source/val/validate_image.cpp",
                          "source/val/validate_instruction.cpp",
                          "source/val/validate_interfaces.cpp",
                          "source/val/validate_layout.cpp",
                          "source/val/validate_literals.cpp",
                          "source/val/validate_logicals.cpp",
                          "source/val/validate_memory.cpp",
                          "source/val/validate_memory_semantics.cpp",
                          "source/val/validate_memory_semantics.h",
                          "source/val/validate_misc.cpp",
                          "source/val/validate_mode_setting.cpp",
                          "source/val/validate_non_uniform.cpp",
                          "source/val/validate_primitives.cpp",
                          "source/val/validate_scopes.cpp",
                          "source/val/validate_scopes.h",
                          "source/val/validate_small_type_uses.cpp",
                          "source/val/validate_type.cpp",
                          "source/val/validation_state.cpp",
                          "source/val/validation_state.h",
                        ],
                        ".",
                        spirv_tools)

  deps = [
    ":spvtools",
    ":spvtools_language_header_cldebuginfo100",
    ":spvtools_language_header_debuginfo",
  ]
  public_deps = [
    ":spvtools_headers",
  ]

  configs += [ ":spvtools_internal_config" ]
}

third_party("spvtools_opt") {
  public_include_dirs = []
  sources =
      rebase_path([
                    "source/opt/aggressive_dead_code_elim_pass.cpp",
                    "source/opt/aggressive_dead_code_elim_pass.h",
                    "source/opt/amd_ext_to_khr.cpp",
                    "source/opt/amd_ext_to_khr.h",
                    "source/opt/basic_block.cpp",
                    "source/opt/basic_block.h",
                    "source/opt/block_merge_pass.cpp",
                    "source/opt/block_merge_pass.h",
                    "source/opt/block_merge_util.cpp",
                    "source/opt/block_merge_util.h",
                    "source/opt/build_module.cpp",
                    "source/opt/build_module.h",
                    "source/opt/ccp_pass.cpp",
                    "source/opt/ccp_pass.h",
                    "source/opt/cfg.cpp",
                    "source/opt/cfg.h",
                    "source/opt/cfg_cleanup_pass.cpp",
                    "source/opt/cfg_cleanup_pass.h",
                    "source/opt/code_sink.cpp",
                    "source/opt/code_sink.h",
                    "source/opt/combine_access_chains.cpp",
                    "source/opt/combine_access_chains.h",
                    "source/opt/compact_ids_pass.cpp",
                    "source/opt/compact_ids_pass.h",
                    "source/opt/composite.cpp",
                    "source/opt/composite.h",
                    "source/opt/const_folding_rules.cpp",
                    "source/opt/const_folding_rules.h",
                    "source/opt/constants.cpp",
                    "source/opt/constants.h",
                    "source/opt/convert_to_half_pass.cpp",
                    "source/opt/convert_to_half_pass.h",
                    "source/opt/copy_prop_arrays.cpp",
                    "source/opt/copy_prop_arrays.h",
                    "source/opt/dead_branch_elim_pass.cpp",
                    "source/opt/dead_branch_elim_pass.h",
                    "source/opt/dead_insert_elim_pass.cpp",
                    "source/opt/dead_insert_elim_pass.h",
                    "source/opt/dead_variable_elimination.cpp",
                    "source/opt/dead_variable_elimination.h",
                    "source/opt/decompose_initialized_variables_pass.cpp",
                    "source/opt/decompose_initialized_variables_pass.h",
                    "source/opt/decoration_manager.cpp",
                    "source/opt/decoration_manager.h",
                    "source/opt/def_use_manager.cpp",
                    "source/opt/def_use_manager.h",
                    "source/opt/desc_sroa.cpp",
                    "source/opt/desc_sroa.h",
                    "source/opt/dominator_analysis.cpp",
                    "source/opt/dominator_analysis.h",
                    "source/opt/dominator_tree.cpp",
                    "source/opt/dominator_tree.h",
                    "source/opt/eliminate_dead_constant_pass.cpp",
                    "source/opt/eliminate_dead_constant_pass.h",
                    "source/opt/eliminate_dead_functions_pass.cpp",
                    "source/opt/eliminate_dead_functions_pass.h",
                    "source/opt/eliminate_dead_functions_util.cpp",
                    "source/opt/eliminate_dead_functions_util.h",
                    "source/opt/eliminate_dead_members_pass.cpp",
                    "source/opt/eliminate_dead_members_pass.h",
                    "source/opt/feature_manager.cpp",
                    "source/opt/feature_manager.h",
                    "source/opt/fix_storage_class.cpp",
                    "source/opt/fix_storage_class.h",
                    "source/opt/flatten_decoration_pass.cpp",
                    "source/opt/flatten_decoration_pass.h",
                    "source/opt/fold.cpp",
                    "source/opt/fold.h",
                    "source/opt/fold_spec_constant_op_and_composite_pass.cpp",
                    "source/opt/fold_spec_constant_op_and_composite_pass.h",
                    "source/opt/folding_rules.cpp",
                    "source/opt/folding_rules.h",
                    "source/opt/freeze_spec_constant_value_pass.cpp",
                    "source/opt/freeze_spec_constant_value_pass.h",
                    "source/opt/function.cpp",
                    "source/opt/function.h",
                    "source/opt/generate_webgpu_initializers_pass.cpp",
                    "source/opt/generate_webgpu_initializers_pass.h",
                    "source/opt/graphics_robust_access_pass.cpp",
                    "source/opt/graphics_robust_access_pass.h",
                    "source/opt/if_conversion.cpp",
                    "source/opt/if_conversion.h",
                    "source/opt/inline_exhaustive_pass.cpp",
                    "source/opt/inline_exhaustive_pass.h",
                    "source/opt/inline_opaque_pass.cpp",
                    "source/opt/inline_opaque_pass.h",
                    "source/opt/inline_pass.cpp",
                    "source/opt/inline_pass.h",
                    "source/opt/inst_bindless_check_pass.cpp",
                    "source/opt/inst_bindless_check_pass.h",
                    "source/opt/inst_buff_addr_check_pass.cpp",
                    "source/opt/inst_buff_addr_check_pass.h",
                    "source/opt/inst_debug_printf_pass.cpp",
                    "source/opt/inst_debug_printf_pass.h",
                    "source/opt/instruction.cpp",
                    "source/opt/instruction.h",
                    "source/opt/instruction_list.cpp",
                    "source/opt/instruction_list.h",
                    "source/opt/instrument_pass.cpp",
                    "source/opt/instrument_pass.h",
                    "source/opt/ir_builder.h",
                    "source/opt/ir_context.cpp",
                    "source/opt/ir_context.h",
                    "source/opt/ir_loader.cpp",
                    "source/opt/ir_loader.h",
                    "source/opt/iterator.h",
                    "source/opt/legalize_vector_shuffle_pass.cpp",
                    "source/opt/legalize_vector_shuffle_pass.h",
                    "source/opt/licm_pass.cpp",
                    "source/opt/licm_pass.h",
                    "source/opt/local_access_chain_convert_pass.cpp",
                    "source/opt/local_access_chain_convert_pass.h",
                    "source/opt/local_redundancy_elimination.cpp",
                    "source/opt/local_redundancy_elimination.h",
                    "source/opt/local_single_block_elim_pass.cpp",
                    "source/opt/local_single_block_elim_pass.h",
                    "source/opt/local_single_store_elim_pass.cpp",
                    "source/opt/local_single_store_elim_pass.h",
                    "source/opt/log.h",
                    "source/opt/loop_dependence.cpp",
                    "source/opt/loop_dependence.h",
                    "source/opt/loop_dependence_helpers.cpp",
                    "source/opt/loop_descriptor.cpp",
                    "source/opt/loop_descriptor.h",
                    "source/opt/loop_fission.cpp",
                    "source/opt/loop_fission.h",
                    "source/opt/loop_fusion.cpp",
                    "source/opt/loop_fusion.h",
                    "source/opt/loop_fusion_pass.cpp",
                    "source/opt/loop_fusion_pass.h",
                    "source/opt/loop_peeling.cpp",
                    "source/opt/loop_peeling.h",
                    "source/opt/loop_unroller.cpp",
                    "source/opt/loop_unroller.h",
                    "source/opt/loop_unswitch_pass.cpp",
                    "source/opt/loop_unswitch_pass.h",
                    "source/opt/loop_utils.cpp",
                    "source/opt/loop_utils.h",
                    "source/opt/mem_pass.cpp",
                    "source/opt/mem_pass.h",
                    "source/opt/merge_return_pass.cpp",
                    "source/opt/merge_return_pass.h",
                    "source/opt/module.cpp",
                    "source/opt/module.h",
                    "source/opt/null_pass.h",
                    "source/opt/optimizer.cpp",
                    "source/opt/pass.cpp",
                    "source/opt/pass.h",
                    "source/opt/pass_manager.cpp",
                    "source/opt/pass_manager.h",
                    "source/opt/passes.h",
                    "source/opt/private_to_local_pass.cpp",
                    "source/opt/private_to_local_pass.h",
                    "source/opt/process_lines_pass.cpp",
                    "source/opt/process_lines_pass.h",
                    "source/opt/propagator.cpp",
                    "source/opt/propagator.h",
                    "source/opt/reduce_load_size.cpp",
                    "source/opt/reduce_load_size.h",
                    "source/opt/redundancy_elimination.cpp",
                    "source/opt/redundancy_elimination.h",
                    "source/opt/reflect.h",
                    "source/opt/register_pressure.cpp",
                    "source/opt/register_pressure.h",
                    "source/opt/relax_float_ops_pass.cpp",
                    "source/opt/relax_float_ops_pass.h",
                    "source/opt/remove_duplicates_pass.cpp",
                    "source/opt/remove_duplicates_pass.h",
                    "source/opt/replace_invalid_opc.cpp",
                    "source/opt/replace_invalid_opc.h",
                    "source/opt/scalar_analysis.cpp",
                    "source/opt/scalar_analysis.h",
                    "source/opt/scalar_analysis_nodes.h",
                    "source/opt/scalar_analysis_simplification.cpp",
                    "source/opt/scalar_replacement_pass.cpp",
                    "source/opt/scalar_replacement_pass.h",
                    "source/opt/set_spec_constant_default_value_pass.cpp",
                    "source/opt/set_spec_constant_default_value_pass.h",
                    "source/opt/simplification_pass.cpp",
                    "source/opt/simplification_pass.h",
                    "source/opt/split_invalid_unreachable_pass.cpp",
                    "source/opt/split_invalid_unreachable_pass.h",
                    "source/opt/ssa_rewrite_pass.cpp",
                    "source/opt/ssa_rewrite_pass.h",
                    "source/opt/strength_reduction_pass.cpp",
                    "source/opt/strength_reduction_pass.h",
                    "source/opt/strip_atomic_counter_memory_pass.cpp",
                    "source/opt/strip_atomic_counter_memory_pass.h",
                    "source/opt/strip_debug_info_pass.cpp",
                    "source/opt/strip_debug_info_pass.h",
                    "source/opt/strip_reflect_info_pass.cpp",
                    "source/opt/strip_reflect_info_pass.h",
                    "source/opt/struct_cfg_analysis.cpp",
                    "source/opt/struct_cfg_analysis.h",
                    "source/opt/tree_iterator.h",
                    "source/opt/type_manager.cpp",
                    "source/opt/type_manager.h",
                    "source/opt/types.cpp",
                    "source/opt/types.h",
                    "source/opt/unify_const_pass.cpp",
                    "source/opt/unify_const_pass.h",
                    "source/opt/upgrade_memory_model.cpp",
                    "source/opt/upgrade_memory_model.h",
                    "source/opt/value_number_table.cpp",
                    "source/opt/value_number_table.h",
                    "source/opt/vector_dce.cpp",
                    "source/opt/vector_dce.h",
                    "source/opt/workaround1209.cpp",
                    "source/opt/workaround1209.h",
                    "source/opt/wrap_opkill.cpp",
                    "source/opt/wrap_opkill.h",
                  ],
                  ".",
                  spirv_tools)

  deps = [
    ":spvtools",
    ":spvtools_language_header_cldebuginfo100",
    ":spvtools_language_header_debuginfo",
    ":spvtools_vendor_tables_spv-amd-shader-ballot",
  ]
  public_deps = [
    ":spvtools_headers",
  ]

  configs += [ ":spvtools_internal_config" ]
}
