# Copyright 2018 Google Inc. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import("//build_overrides/build.gni")
import("//build_overrides/spirv_tools.gni")
if (build_with_chromium) {
  import("//testing/test.gni")
  import("//third_party/protobuf/proto_library.gni")
}

spirv_headers = spirv_tools_spirv_headers_dir
spirv_is_winuwp = is_win && target_os == "winuwp"

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

  action("spvtools_core_tables_" + target_name) {
    script = "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_headers}/include/spirv/unified1/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file = "${spirv_headers}/include/spirv/unified1/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 = "utils/generate_grammar_tables.py"

    version = invoker.version

    core_json_file =
        "${spirv_headers}/include/spirv/$version/spirv.core.grammar.json"
    debuginfo_insts_file =
        "${spirv_headers}/include/spirv/unified1/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file = "${spirv_headers}/include/spirv/unified1/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 = "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_headers}/include/spirv/unified1/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file = "${spirv_headers}/include/spirv/unified1/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 = "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_headers}/include/spirv/unified1/extinst.debuginfo.grammar.json"
    cldebuginfo100_insts_file = "${spirv_headers}/include/spirv/unified1/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 = "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 = "utils/generate_grammar_tables.py"

    name = invoker.name
    extinst_vendor_grammar =
        "${spirv_headers}/include/spirv/unified1/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 = "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 = "utils/update_build_version.py"

  src_dir = "."
  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_headers}/include/spirv/unified1/extinst.debuginfo.grammar.json"
}
spvtools_language_header("cldebuginfo100") {
  name = "OpenCLDebugInfo100"
  grammar_file = "${spirv_headers}/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json"
}
spvtools_language_header("vkdebuginfo100") {
  name = "NonSemanticShaderDebugInfo100"
  grammar_file = "${spirv_headers}/include/spirv/unified1/extinst.nonsemantic.shader.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_",
  ],
  [
    "nonsemantic.clspvreflection",
    "...nil...",
  ],
  [
    "nonsemantic.shader.debuginfo.100",
    "SHDEBUG100_",
  ],
]

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 = [ "include" ]
}

config("spvtools_include_gen_dirs") {
  include_dirs = [ "$target_gen_dir" ]
}

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

  configs = [
    ":spvtools_public_config",
    ":spvtools_include_gen_dirs",
  ]

  cflags = []
  if (is_clang) {
    cflags += [
      "-Wno-implicit-fallthrough",
      "-Wno-newline-eof",
      "-Wno-unreachable-code-break",
      "-Wno-unreachable-code-return",
    ]
  } else if (!is_win) {
    # Work around a false-positive on a Skia GCC 10 builder.
    cflags += [ "-Wno-format-truncation" ]
  }
}

source_set("spvtools_headers") {
  sources = [
    "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",
  ]

  public_configs = [ ":spvtools_public_config" ]
}

group("spvtools_language_headers") {
  public_deps = [
    ":spvtools_language_header_cldebuginfo100",
    ":spvtools_language_header_debuginfo",
    ":spvtools_language_header_vkdebuginfo100",
  ]
}

static_library("spvtools") {
  deps = [
    ":spvtools_core_tables_unified1",
    ":spvtools_generators_inc",
    ":spvtools_glsl_tables_glsl1-0",
    ":spvtools_language_header_cldebuginfo100",
    ":spvtools_language_header_debuginfo",
    ":spvtools_language_header_vkdebuginfo100",
    ":spvtools_opencl_tables_opencl1-0",
  ]
  foreach(table_def, spvtools_vendor_tables) {
    target_name = table_def[0]
    deps += [ ":spvtools_vendor_tables_$target_name" ]
  }

  sources = [
    "source/assembly_grammar.cpp",
    "source/assembly_grammar.h",
    "source/binary.cpp",
    "source/binary.h",
    "source/cfa.h",
    "source/common_debug_info.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/latest_version_glsl_std_450_header.h",
    "source/latest_version_opencl_std_header.h",
    "source/latest_version_spirv_header.h",
    "source/libspirv.cpp",
    "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_fuzzer_options.cpp",
    "source/spirv_fuzzer_options.h",
    "source/spirv_optimizer_options.cpp",
    "source/spirv_optimizer_options.h",
    "source/spirv_reducer_options.cpp",
    "source/spirv_reducer_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",
  ]

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

  if (build_with_chromium) {
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
  }
  configs += [ ":spvtools_internal_config" ]
}

static_library("spvtools_val") {
  sources = [
    "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",
  ]

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

  if (build_with_chromium) {
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
  }
  configs += [ ":spvtools_internal_config" ]
}

static_library("spvtools_opt") {
  sources = [
    "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/control_dependence.cpp",
    "source/opt/control_dependence.h",
    "source/opt/convert_to_half_pass.cpp",
    "source/opt/convert_to_half_pass.h",
    "source/opt/convert_to_sampled_image_pass.cpp",
    "source/opt/convert_to_sampled_image_pass.h",
    "source/opt/copy_prop_arrays.cpp",
    "source/opt/copy_prop_arrays.h",
    "source/opt/dataflow.cpp",
    "source/opt/dataflow.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/debug_info_manager.cpp",
    "source/opt/debug_info_manager.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/desc_sroa_util.cpp",
    "source/opt/desc_sroa_util.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/empty_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/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/interp_fixup_pass.cpp",
    "source/opt/interp_fixup_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/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/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/remove_unused_interface_variables_pass.cpp",
    "source/opt/remove_unused_interface_variables_pass.h",
    "source/opt/replace_desc_array_access_using_var_index.cpp",
    "source/opt/replace_desc_array_access_using_var_index.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/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_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",
  ]

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

  if (build_with_chromium) {
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
  }
  configs += [ ":spvtools_internal_config" ]
}

static_library("spvtools_link") {
  sources = [ "source/link/linker.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_opt",
    ":spvtools_val",
  ]
  public_deps = [ ":spvtools_headers" ]
  if (build_with_chromium) {
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
  }
  configs += [ ":spvtools_internal_config" ]
}

static_library("spvtools_reduce") {
  sources = [
    "source/reduce/change_operand_reduction_opportunity.cpp",
    "source/reduce/change_operand_reduction_opportunity.h",
    "source/reduce/change_operand_to_undef_reduction_opportunity.cpp",
    "source/reduce/change_operand_to_undef_reduction_opportunity.h",
    "source/reduce/conditional_branch_to_simple_conditional_branch_opportunity_finder.cpp",
    "source/reduce/conditional_branch_to_simple_conditional_branch_opportunity_finder.h",
    "source/reduce/conditional_branch_to_simple_conditional_branch_reduction_opportunity.cpp",
    "source/reduce/conditional_branch_to_simple_conditional_branch_reduction_opportunity.h",
    "source/reduce/merge_blocks_reduction_opportunity.cpp",
    "source/reduce/merge_blocks_reduction_opportunity.h",
    "source/reduce/merge_blocks_reduction_opportunity_finder.cpp",
    "source/reduce/merge_blocks_reduction_opportunity_finder.h",
    "source/reduce/operand_to_const_reduction_opportunity_finder.cpp",
    "source/reduce/operand_to_const_reduction_opportunity_finder.h",
    "source/reduce/operand_to_dominating_id_reduction_opportunity_finder.cpp",
    "source/reduce/operand_to_dominating_id_reduction_opportunity_finder.h",
    "source/reduce/operand_to_undef_reduction_opportunity_finder.cpp",
    "source/reduce/operand_to_undef_reduction_opportunity_finder.h",
    "source/reduce/reducer.cpp",
    "source/reduce/reducer.h",
    "source/reduce/reduction_opportunity.cpp",
    "source/reduce/reduction_opportunity.h",
    "source/reduce/reduction_opportunity_finder.cpp",
    "source/reduce/reduction_opportunity_finder.h",
    "source/reduce/reduction_pass.cpp",
    "source/reduce/reduction_pass.h",
    "source/reduce/reduction_util.cpp",
    "source/reduce/reduction_util.h",
    "source/reduce/remove_block_reduction_opportunity.cpp",
    "source/reduce/remove_block_reduction_opportunity.h",
    "source/reduce/remove_block_reduction_opportunity_finder.cpp",
    "source/reduce/remove_block_reduction_opportunity_finder.h",
    "source/reduce/remove_function_reduction_opportunity.cpp",
    "source/reduce/remove_function_reduction_opportunity.h",
    "source/reduce/remove_function_reduction_opportunity_finder.cpp",
    "source/reduce/remove_function_reduction_opportunity_finder.h",
    "source/reduce/remove_instruction_reduction_opportunity.cpp",
    "source/reduce/remove_instruction_reduction_opportunity.h",
    "source/reduce/remove_selection_reduction_opportunity.cpp",
    "source/reduce/remove_selection_reduction_opportunity.h",
    "source/reduce/remove_selection_reduction_opportunity_finder.cpp",
    "source/reduce/remove_selection_reduction_opportunity_finder.h",
    "source/reduce/remove_struct_member_reduction_opportunity.cpp",
    "source/reduce/remove_struct_member_reduction_opportunity.h",
    "source/reduce/remove_unused_instruction_reduction_opportunity_finder.cpp",
    "source/reduce/remove_unused_instruction_reduction_opportunity_finder.h",
    "source/reduce/remove_unused_struct_member_reduction_opportunity_finder.cpp",
    "source/reduce/remove_unused_struct_member_reduction_opportunity_finder.h",
    "source/reduce/simple_conditional_branch_to_branch_opportunity_finder.cpp",
    "source/reduce/simple_conditional_branch_to_branch_opportunity_finder.h",
    "source/reduce/simple_conditional_branch_to_branch_reduction_opportunity.cpp",
    "source/reduce/simple_conditional_branch_to_branch_reduction_opportunity.h",
    "source/reduce/structured_construct_to_block_reduction_opportunity.cpp",
    "source/reduce/structured_construct_to_block_reduction_opportunity.h",
    "source/reduce/structured_construct_to_block_reduction_opportunity_finder.cpp",
    "source/reduce/structured_construct_to_block_reduction_opportunity_finder.h",
    "source/reduce/structured_loop_to_selection_reduction_opportunity.cpp",
    "source/reduce/structured_loop_to_selection_reduction_opportunity.h",
    "source/reduce/structured_loop_to_selection_reduction_opportunity_finder.cpp",
    "source/reduce/structured_loop_to_selection_reduction_opportunity_finder.h",
  ]
  deps = [
    ":spvtools",
    ":spvtools_opt",
  ]
  public_deps = [ ":spvtools_headers" ]
  if (build_with_chromium) {
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
  }
  configs += [ ":spvtools_internal_config" ]
}

if (build_with_chromium) {
  # The spirv-fuzz library is only built when in a Chromium checkout
  # due to its dependency on protobuf.

  proto_library("spvtools_fuzz_proto") {
    sources = [ "source/fuzz/protobufs/spvtoolsfuzz.proto" ]
    generate_python = false
    use_protobuf_full = true
  }

  static_library("spvtools_fuzz") {
    sources = [
      "source/fuzz/added_function_reducer.cpp",
      "source/fuzz/added_function_reducer.h",
      "source/fuzz/available_instructions.cpp",
      "source/fuzz/available_instructions.h",
      "source/fuzz/call_graph.cpp",
      "source/fuzz/call_graph.h",
      "source/fuzz/comparator_deep_blocks_first.h",
      "source/fuzz/counter_overflow_id_source.cpp",
      "source/fuzz/counter_overflow_id_source.h",
      "source/fuzz/data_descriptor.cpp",
      "source/fuzz/data_descriptor.h",
      "source/fuzz/equivalence_relation.h",
      "source/fuzz/fact_manager/constant_uniform_facts.cpp",
      "source/fuzz/fact_manager/constant_uniform_facts.h",
      "source/fuzz/fact_manager/data_synonym_and_id_equation_facts.cpp",
      "source/fuzz/fact_manager/data_synonym_and_id_equation_facts.h",
      "source/fuzz/fact_manager/dead_block_facts.cpp",
      "source/fuzz/fact_manager/dead_block_facts.h",
      "source/fuzz/fact_manager/fact_manager.cpp",
      "source/fuzz/fact_manager/fact_manager.h",
      "source/fuzz/fact_manager/irrelevant_value_facts.cpp",
      "source/fuzz/fact_manager/irrelevant_value_facts.h",
      "source/fuzz/fact_manager/livesafe_function_facts.cpp",
      "source/fuzz/fact_manager/livesafe_function_facts.h",
      "source/fuzz/force_render_red.cpp",
      "source/fuzz/force_render_red.h",
      "source/fuzz/fuzzer.cpp",
      "source/fuzz/fuzzer.h",
      "source/fuzz/fuzzer_context.cpp",
      "source/fuzz/fuzzer_context.h",
      "source/fuzz/fuzzer_pass.cpp",
      "source/fuzz/fuzzer_pass.h",
      "source/fuzz/fuzzer_pass_add_access_chains.cpp",
      "source/fuzz/fuzzer_pass_add_access_chains.h",
      "source/fuzz/fuzzer_pass_add_bit_instruction_synonyms.cpp",
      "source/fuzz/fuzzer_pass_add_bit_instruction_synonyms.h",
      "source/fuzz/fuzzer_pass_add_composite_extract.cpp",
      "source/fuzz/fuzzer_pass_add_composite_extract.h",
      "source/fuzz/fuzzer_pass_add_composite_inserts.cpp",
      "source/fuzz/fuzzer_pass_add_composite_inserts.h",
      "source/fuzz/fuzzer_pass_add_composite_types.cpp",
      "source/fuzz/fuzzer_pass_add_composite_types.h",
      "source/fuzz/fuzzer_pass_add_copy_memory.cpp",
      "source/fuzz/fuzzer_pass_add_copy_memory.h",
      "source/fuzz/fuzzer_pass_add_dead_blocks.cpp",
      "source/fuzz/fuzzer_pass_add_dead_blocks.h",
      "source/fuzz/fuzzer_pass_add_dead_breaks.cpp",
      "source/fuzz/fuzzer_pass_add_dead_breaks.h",
      "source/fuzz/fuzzer_pass_add_dead_continues.cpp",
      "source/fuzz/fuzzer_pass_add_dead_continues.h",
      "source/fuzz/fuzzer_pass_add_equation_instructions.cpp",
      "source/fuzz/fuzzer_pass_add_equation_instructions.h",
      "source/fuzz/fuzzer_pass_add_function_calls.cpp",
      "source/fuzz/fuzzer_pass_add_function_calls.h",
      "source/fuzz/fuzzer_pass_add_global_variables.cpp",
      "source/fuzz/fuzzer_pass_add_global_variables.h",
      "source/fuzz/fuzzer_pass_add_image_sample_unused_components.cpp",
      "source/fuzz/fuzzer_pass_add_image_sample_unused_components.h",
      "source/fuzz/fuzzer_pass_add_loads.cpp",
      "source/fuzz/fuzzer_pass_add_loads.h",
      "source/fuzz/fuzzer_pass_add_local_variables.cpp",
      "source/fuzz/fuzzer_pass_add_local_variables.h",
      "source/fuzz/fuzzer_pass_add_loop_preheaders.cpp",
      "source/fuzz/fuzzer_pass_add_loop_preheaders.h",
      "source/fuzz/fuzzer_pass_add_loops_to_create_int_constant_synonyms.cpp",
      "source/fuzz/fuzzer_pass_add_loops_to_create_int_constant_synonyms.h",
      "source/fuzz/fuzzer_pass_add_no_contraction_decorations.cpp",
      "source/fuzz/fuzzer_pass_add_no_contraction_decorations.h",
      "source/fuzz/fuzzer_pass_add_opphi_synonyms.cpp",
      "source/fuzz/fuzzer_pass_add_opphi_synonyms.h",
      "source/fuzz/fuzzer_pass_add_parameters.cpp",
      "source/fuzz/fuzzer_pass_add_parameters.h",
      "source/fuzz/fuzzer_pass_add_relaxed_decorations.cpp",
      "source/fuzz/fuzzer_pass_add_relaxed_decorations.h",
      "source/fuzz/fuzzer_pass_add_stores.cpp",
      "source/fuzz/fuzzer_pass_add_stores.h",
      "source/fuzz/fuzzer_pass_add_synonyms.cpp",
      "source/fuzz/fuzzer_pass_add_synonyms.h",
      "source/fuzz/fuzzer_pass_add_vector_shuffle_instructions.cpp",
      "source/fuzz/fuzzer_pass_add_vector_shuffle_instructions.h",
      "source/fuzz/fuzzer_pass_adjust_branch_weights.cpp",
      "source/fuzz/fuzzer_pass_adjust_branch_weights.h",
      "source/fuzz/fuzzer_pass_adjust_function_controls.cpp",
      "source/fuzz/fuzzer_pass_adjust_function_controls.h",
      "source/fuzz/fuzzer_pass_adjust_loop_controls.cpp",
      "source/fuzz/fuzzer_pass_adjust_loop_controls.h",
      "source/fuzz/fuzzer_pass_adjust_memory_operands_masks.cpp",
      "source/fuzz/fuzzer_pass_adjust_memory_operands_masks.h",
      "source/fuzz/fuzzer_pass_adjust_selection_controls.cpp",
      "source/fuzz/fuzzer_pass_adjust_selection_controls.h",
      "source/fuzz/fuzzer_pass_apply_id_synonyms.cpp",
      "source/fuzz/fuzzer_pass_apply_id_synonyms.h",
      "source/fuzz/fuzzer_pass_construct_composites.cpp",
      "source/fuzz/fuzzer_pass_construct_composites.h",
      "source/fuzz/fuzzer_pass_copy_objects.cpp",
      "source/fuzz/fuzzer_pass_copy_objects.h",
      "source/fuzz/fuzzer_pass_donate_modules.cpp",
      "source/fuzz/fuzzer_pass_donate_modules.h",
      "source/fuzz/fuzzer_pass_duplicate_regions_with_selections.cpp",
      "source/fuzz/fuzzer_pass_duplicate_regions_with_selections.h",
      "source/fuzz/fuzzer_pass_expand_vector_reductions.cpp",
      "source/fuzz/fuzzer_pass_expand_vector_reductions.h",
      "source/fuzz/fuzzer_pass_flatten_conditional_branches.cpp",
      "source/fuzz/fuzzer_pass_flatten_conditional_branches.h",
      "source/fuzz/fuzzer_pass_inline_functions.cpp",
      "source/fuzz/fuzzer_pass_inline_functions.h",
      "source/fuzz/fuzzer_pass_interchange_signedness_of_integer_operands.cpp",
      "source/fuzz/fuzzer_pass_interchange_signedness_of_integer_operands.h",
      "source/fuzz/fuzzer_pass_interchange_zero_like_constants.cpp",
      "source/fuzz/fuzzer_pass_interchange_zero_like_constants.h",
      "source/fuzz/fuzzer_pass_invert_comparison_operators.cpp",
      "source/fuzz/fuzzer_pass_invert_comparison_operators.h",
      "source/fuzz/fuzzer_pass_make_vector_operations_dynamic.cpp",
      "source/fuzz/fuzzer_pass_make_vector_operations_dynamic.h",
      "source/fuzz/fuzzer_pass_merge_blocks.cpp",
      "source/fuzz/fuzzer_pass_merge_blocks.h",
      "source/fuzz/fuzzer_pass_merge_function_returns.cpp",
      "source/fuzz/fuzzer_pass_merge_function_returns.h",
      "source/fuzz/fuzzer_pass_mutate_pointers.cpp",
      "source/fuzz/fuzzer_pass_mutate_pointers.h",
      "source/fuzz/fuzzer_pass_obfuscate_constants.cpp",
      "source/fuzz/fuzzer_pass_obfuscate_constants.h",
      "source/fuzz/fuzzer_pass_outline_functions.cpp",
      "source/fuzz/fuzzer_pass_outline_functions.h",
      "source/fuzz/fuzzer_pass_permute_blocks.cpp",
      "source/fuzz/fuzzer_pass_permute_blocks.h",
      "source/fuzz/fuzzer_pass_permute_function_parameters.cpp",
      "source/fuzz/fuzzer_pass_permute_function_parameters.h",
      "source/fuzz/fuzzer_pass_permute_function_variables.cpp",
      "source/fuzz/fuzzer_pass_permute_function_variables.h",
      "source/fuzz/fuzzer_pass_permute_instructions.cpp",
      "source/fuzz/fuzzer_pass_permute_instructions.h",
      "source/fuzz/fuzzer_pass_permute_phi_operands.cpp",
      "source/fuzz/fuzzer_pass_permute_phi_operands.h",
      "source/fuzz/fuzzer_pass_propagate_instructions_down.cpp",
      "source/fuzz/fuzzer_pass_propagate_instructions_down.h",
      "source/fuzz/fuzzer_pass_propagate_instructions_up.cpp",
      "source/fuzz/fuzzer_pass_propagate_instructions_up.h",
      "source/fuzz/fuzzer_pass_push_ids_through_variables.cpp",
      "source/fuzz/fuzzer_pass_push_ids_through_variables.h",
      "source/fuzz/fuzzer_pass_replace_adds_subs_muls_with_carrying_extended.cpp",
      "source/fuzz/fuzzer_pass_replace_adds_subs_muls_with_carrying_extended.h",
      "source/fuzz/fuzzer_pass_replace_branches_from_dead_blocks_with_exits.cpp",
      "source/fuzz/fuzzer_pass_replace_branches_from_dead_blocks_with_exits.h",
      "source/fuzz/fuzzer_pass_replace_copy_memories_with_loads_stores.cpp",
      "source/fuzz/fuzzer_pass_replace_copy_memories_with_loads_stores.h",
      "source/fuzz/fuzzer_pass_replace_copy_objects_with_stores_loads.cpp",
      "source/fuzz/fuzzer_pass_replace_copy_objects_with_stores_loads.h",
      "source/fuzz/fuzzer_pass_replace_irrelevant_ids.cpp",
      "source/fuzz/fuzzer_pass_replace_irrelevant_ids.h",
      "source/fuzz/fuzzer_pass_replace_linear_algebra_instructions.cpp",
      "source/fuzz/fuzzer_pass_replace_linear_algebra_instructions.h",
      "source/fuzz/fuzzer_pass_replace_loads_stores_with_copy_memories.cpp",
      "source/fuzz/fuzzer_pass_replace_loads_stores_with_copy_memories.h",
      "source/fuzz/fuzzer_pass_replace_opphi_ids_from_dead_predecessors.cpp",
      "source/fuzz/fuzzer_pass_replace_opphi_ids_from_dead_predecessors.h",
      "source/fuzz/fuzzer_pass_replace_opselects_with_conditional_branches.cpp",
      "source/fuzz/fuzzer_pass_replace_opselects_with_conditional_branches.h",
      "source/fuzz/fuzzer_pass_replace_parameter_with_global.cpp",
      "source/fuzz/fuzzer_pass_replace_parameter_with_global.h",
      "source/fuzz/fuzzer_pass_replace_params_with_struct.cpp",
      "source/fuzz/fuzzer_pass_replace_params_with_struct.h",
      "source/fuzz/fuzzer_pass_split_blocks.cpp",
      "source/fuzz/fuzzer_pass_split_blocks.h",
      "source/fuzz/fuzzer_pass_swap_commutable_operands.cpp",
      "source/fuzz/fuzzer_pass_swap_commutable_operands.h",
      "source/fuzz/fuzzer_pass_swap_conditional_branch_operands.cpp",
      "source/fuzz/fuzzer_pass_swap_conditional_branch_operands.h",
      "source/fuzz/fuzzer_pass_swap_functions.cpp",
      "source/fuzz/fuzzer_pass_swap_functions.h",
      "source/fuzz/fuzzer_pass_toggle_access_chain_instruction.cpp",
      "source/fuzz/fuzzer_pass_toggle_access_chain_instruction.h",
      "source/fuzz/fuzzer_pass_wrap_regions_in_selections.cpp",
      "source/fuzz/fuzzer_pass_wrap_regions_in_selections.h",
      "source/fuzz/fuzzer_pass_wrap_vector_synonym.cpp",
      "source/fuzz/fuzzer_pass_wrap_vector_synonym.h",
      "source/fuzz/fuzzer_util.cpp",
      "source/fuzz/fuzzer_util.h",
      "source/fuzz/id_use_descriptor.cpp",
      "source/fuzz/id_use_descriptor.h",
      "source/fuzz/instruction_descriptor.cpp",
      "source/fuzz/instruction_descriptor.h",
      "source/fuzz/instruction_message.cpp",
      "source/fuzz/instruction_message.h",
      "source/fuzz/overflow_id_source.cpp",
      "source/fuzz/overflow_id_source.h",
      "source/fuzz/pass_management/repeated_pass_instances.h",
      "source/fuzz/pass_management/repeated_pass_manager.cpp",
      "source/fuzz/pass_management/repeated_pass_manager.h",
      "source/fuzz/pass_management/repeated_pass_manager_looped_with_recommendations.cpp",
      "source/fuzz/pass_management/repeated_pass_manager_looped_with_recommendations.h",
      "source/fuzz/pass_management/repeated_pass_manager_random_with_recommendations.cpp",
      "source/fuzz/pass_management/repeated_pass_manager_random_with_recommendations.h",
      "source/fuzz/pass_management/repeated_pass_manager_simple.cpp",
      "source/fuzz/pass_management/repeated_pass_manager_simple.h",
      "source/fuzz/pass_management/repeated_pass_recommender.cpp",
      "source/fuzz/pass_management/repeated_pass_recommender.h",
      "source/fuzz/pass_management/repeated_pass_recommender_standard.cpp",
      "source/fuzz/pass_management/repeated_pass_recommender_standard.h",
      "source/fuzz/protobufs/spirvfuzz_protobufs.h",
      "source/fuzz/pseudo_random_generator.cpp",
      "source/fuzz/pseudo_random_generator.h",
      "source/fuzz/random_generator.cpp",
      "source/fuzz/random_generator.h",
      "source/fuzz/replayer.cpp",
      "source/fuzz/replayer.h",
      "source/fuzz/shrinker.cpp",
      "source/fuzz/shrinker.h",
      "source/fuzz/transformation.cpp",
      "source/fuzz/transformation.h",
      "source/fuzz/transformation_access_chain.cpp",
      "source/fuzz/transformation_access_chain.h",
      "source/fuzz/transformation_add_bit_instruction_synonym.cpp",
      "source/fuzz/transformation_add_bit_instruction_synonym.h",
      "source/fuzz/transformation_add_constant_boolean.cpp",
      "source/fuzz/transformation_add_constant_boolean.h",
      "source/fuzz/transformation_add_constant_composite.cpp",
      "source/fuzz/transformation_add_constant_composite.h",
      "source/fuzz/transformation_add_constant_null.cpp",
      "source/fuzz/transformation_add_constant_null.h",
      "source/fuzz/transformation_add_constant_scalar.cpp",
      "source/fuzz/transformation_add_constant_scalar.h",
      "source/fuzz/transformation_add_copy_memory.cpp",
      "source/fuzz/transformation_add_copy_memory.h",
      "source/fuzz/transformation_add_dead_block.cpp",
      "source/fuzz/transformation_add_dead_block.h",
      "source/fuzz/transformation_add_dead_break.cpp",
      "source/fuzz/transformation_add_dead_break.h",
      "source/fuzz/transformation_add_dead_continue.cpp",
      "source/fuzz/transformation_add_dead_continue.h",
      "source/fuzz/transformation_add_early_terminator_wrapper.cpp",
      "source/fuzz/transformation_add_early_terminator_wrapper.h",
      "source/fuzz/transformation_add_function.cpp",
      "source/fuzz/transformation_add_function.h",
      "source/fuzz/transformation_add_global_undef.cpp",
      "source/fuzz/transformation_add_global_undef.h",
      "source/fuzz/transformation_add_global_variable.cpp",
      "source/fuzz/transformation_add_global_variable.h",
      "source/fuzz/transformation_add_image_sample_unused_components.cpp",
      "source/fuzz/transformation_add_image_sample_unused_components.h",
      "source/fuzz/transformation_add_local_variable.cpp",
      "source/fuzz/transformation_add_local_variable.h",
      "source/fuzz/transformation_add_loop_preheader.cpp",
      "source/fuzz/transformation_add_loop_preheader.h",
      "source/fuzz/transformation_add_loop_to_create_int_constant_synonym.cpp",
      "source/fuzz/transformation_add_loop_to_create_int_constant_synonym.h",
      "source/fuzz/transformation_add_no_contraction_decoration.cpp",
      "source/fuzz/transformation_add_no_contraction_decoration.h",
      "source/fuzz/transformation_add_opphi_synonym.cpp",
      "source/fuzz/transformation_add_opphi_synonym.h",
      "source/fuzz/transformation_add_parameter.cpp",
      "source/fuzz/transformation_add_parameter.h",
      "source/fuzz/transformation_add_relaxed_decoration.cpp",
      "source/fuzz/transformation_add_relaxed_decoration.h",
      "source/fuzz/transformation_add_spec_constant_op.cpp",
      "source/fuzz/transformation_add_spec_constant_op.h",
      "source/fuzz/transformation_add_synonym.cpp",
      "source/fuzz/transformation_add_synonym.h",
      "source/fuzz/transformation_add_type_array.cpp",
      "source/fuzz/transformation_add_type_array.h",
      "source/fuzz/transformation_add_type_boolean.cpp",
      "source/fuzz/transformation_add_type_boolean.h",
      "source/fuzz/transformation_add_type_float.cpp",
      "source/fuzz/transformation_add_type_float.h",
      "source/fuzz/transformation_add_type_function.cpp",
      "source/fuzz/transformation_add_type_function.h",
      "source/fuzz/transformation_add_type_int.cpp",
      "source/fuzz/transformation_add_type_int.h",
      "source/fuzz/transformation_add_type_matrix.cpp",
      "source/fuzz/transformation_add_type_matrix.h",
      "source/fuzz/transformation_add_type_pointer.cpp",
      "source/fuzz/transformation_add_type_pointer.h",
      "source/fuzz/transformation_add_type_struct.cpp",
      "source/fuzz/transformation_add_type_struct.h",
      "source/fuzz/transformation_add_type_vector.cpp",
      "source/fuzz/transformation_add_type_vector.h",
      "source/fuzz/transformation_adjust_branch_weights.cpp",
      "source/fuzz/transformation_adjust_branch_weights.h",
      "source/fuzz/transformation_composite_construct.cpp",
      "source/fuzz/transformation_composite_construct.h",
      "source/fuzz/transformation_composite_extract.cpp",
      "source/fuzz/transformation_composite_extract.h",
      "source/fuzz/transformation_composite_insert.cpp",
      "source/fuzz/transformation_composite_insert.h",
      "source/fuzz/transformation_compute_data_synonym_fact_closure.cpp",
      "source/fuzz/transformation_compute_data_synonym_fact_closure.h",
      "source/fuzz/transformation_context.cpp",
      "source/fuzz/transformation_context.h",
      "source/fuzz/transformation_duplicate_region_with_selection.cpp",
      "source/fuzz/transformation_duplicate_region_with_selection.h",
      "source/fuzz/transformation_equation_instruction.cpp",
      "source/fuzz/transformation_equation_instruction.h",
      "source/fuzz/transformation_expand_vector_reduction.cpp",
      "source/fuzz/transformation_expand_vector_reduction.h",
      "source/fuzz/transformation_flatten_conditional_branch.cpp",
      "source/fuzz/transformation_flatten_conditional_branch.h",
      "source/fuzz/transformation_function_call.cpp",
      "source/fuzz/transformation_function_call.h",
      "source/fuzz/transformation_inline_function.cpp",
      "source/fuzz/transformation_inline_function.h",
      "source/fuzz/transformation_invert_comparison_operator.cpp",
      "source/fuzz/transformation_invert_comparison_operator.h",
      "source/fuzz/transformation_load.cpp",
      "source/fuzz/transformation_load.h",
      "source/fuzz/transformation_make_vector_operation_dynamic.cpp",
      "source/fuzz/transformation_make_vector_operation_dynamic.h",
      "source/fuzz/transformation_merge_blocks.cpp",
      "source/fuzz/transformation_merge_blocks.h",
      "source/fuzz/transformation_merge_function_returns.cpp",
      "source/fuzz/transformation_merge_function_returns.h",
      "source/fuzz/transformation_move_block_down.cpp",
      "source/fuzz/transformation_move_block_down.h",
      "source/fuzz/transformation_move_instruction_down.cpp",
      "source/fuzz/transformation_move_instruction_down.h",
      "source/fuzz/transformation_mutate_pointer.cpp",
      "source/fuzz/transformation_mutate_pointer.h",
      "source/fuzz/transformation_outline_function.cpp",
      "source/fuzz/transformation_outline_function.h",
      "source/fuzz/transformation_permute_function_parameters.cpp",
      "source/fuzz/transformation_permute_function_parameters.h",
      "source/fuzz/transformation_permute_phi_operands.cpp",
      "source/fuzz/transformation_permute_phi_operands.h",
      "source/fuzz/transformation_propagate_instruction_down.cpp",
      "source/fuzz/transformation_propagate_instruction_down.h",
      "source/fuzz/transformation_propagate_instruction_up.cpp",
      "source/fuzz/transformation_propagate_instruction_up.h",
      "source/fuzz/transformation_push_id_through_variable.cpp",
      "source/fuzz/transformation_push_id_through_variable.h",
      "source/fuzz/transformation_record_synonymous_constants.cpp",
      "source/fuzz/transformation_record_synonymous_constants.h",
      "source/fuzz/transformation_replace_add_sub_mul_with_carrying_extended.cpp",
      "source/fuzz/transformation_replace_add_sub_mul_with_carrying_extended.h",
      "source/fuzz/transformation_replace_boolean_constant_with_constant_binary.cpp",
      "source/fuzz/transformation_replace_boolean_constant_with_constant_binary.h",
      "source/fuzz/transformation_replace_branch_from_dead_block_with_exit.cpp",
      "source/fuzz/transformation_replace_branch_from_dead_block_with_exit.h",
      "source/fuzz/transformation_replace_constant_with_uniform.cpp",
      "source/fuzz/transformation_replace_constant_with_uniform.h",
      "source/fuzz/transformation_replace_copy_memory_with_load_store.cpp",
      "source/fuzz/transformation_replace_copy_memory_with_load_store.h",
      "source/fuzz/transformation_replace_copy_object_with_store_load.cpp",
      "source/fuzz/transformation_replace_copy_object_with_store_load.h",
      "source/fuzz/transformation_replace_id_with_synonym.cpp",
      "source/fuzz/transformation_replace_id_with_synonym.h",
      "source/fuzz/transformation_replace_irrelevant_id.cpp",
      "source/fuzz/transformation_replace_irrelevant_id.h",
      "source/fuzz/transformation_replace_linear_algebra_instruction.cpp",
      "source/fuzz/transformation_replace_linear_algebra_instruction.h",
      "source/fuzz/transformation_replace_load_store_with_copy_memory.cpp",
      "source/fuzz/transformation_replace_load_store_with_copy_memory.h",
      "source/fuzz/transformation_replace_opphi_id_from_dead_predecessor.cpp",
      "source/fuzz/transformation_replace_opphi_id_from_dead_predecessor.h",
      "source/fuzz/transformation_replace_opselect_with_conditional_branch.cpp",
      "source/fuzz/transformation_replace_opselect_with_conditional_branch.h",
      "source/fuzz/transformation_replace_parameter_with_global.cpp",
      "source/fuzz/transformation_replace_parameter_with_global.h",
      "source/fuzz/transformation_replace_params_with_struct.cpp",
      "source/fuzz/transformation_replace_params_with_struct.h",
      "source/fuzz/transformation_set_function_control.cpp",
      "source/fuzz/transformation_set_function_control.h",
      "source/fuzz/transformation_set_loop_control.cpp",
      "source/fuzz/transformation_set_loop_control.h",
      "source/fuzz/transformation_set_memory_operands_mask.cpp",
      "source/fuzz/transformation_set_memory_operands_mask.h",
      "source/fuzz/transformation_set_selection_control.cpp",
      "source/fuzz/transformation_set_selection_control.h",
      "source/fuzz/transformation_split_block.cpp",
      "source/fuzz/transformation_split_block.h",
      "source/fuzz/transformation_store.cpp",
      "source/fuzz/transformation_store.h",
      "source/fuzz/transformation_swap_commutable_operands.cpp",
      "source/fuzz/transformation_swap_commutable_operands.h",
      "source/fuzz/transformation_swap_conditional_branch_operands.cpp",
      "source/fuzz/transformation_swap_conditional_branch_operands.h",
      "source/fuzz/transformation_swap_function_variables.cpp",
      "source/fuzz/transformation_swap_function_variables.h",
      "source/fuzz/transformation_swap_two_functions.cpp",
      "source/fuzz/transformation_swap_two_functions.h",
      "source/fuzz/transformation_toggle_access_chain_instruction.cpp",
      "source/fuzz/transformation_toggle_access_chain_instruction.h",
      "source/fuzz/transformation_vector_shuffle.cpp",
      "source/fuzz/transformation_vector_shuffle.h",
      "source/fuzz/transformation_wrap_early_terminator_in_function.cpp",
      "source/fuzz/transformation_wrap_early_terminator_in_function.h",
      "source/fuzz/transformation_wrap_region_in_selection.cpp",
      "source/fuzz/transformation_wrap_region_in_selection.h",
      "source/fuzz/transformation_wrap_vector_synonym.cpp",
      "source/fuzz/transformation_wrap_vector_synonym.h",
      "source/fuzz/uniform_buffer_element_descriptor.cpp",
      "source/fuzz/uniform_buffer_element_descriptor.h",
    ]
    deps = [
      ":spvtools",
      ":spvtools_fuzz_proto",
      ":spvtools_opt",
      ":spvtools_reduce",
      "//third_party/protobuf:protobuf_full",
    ]
    public_deps = [ ":spvtools_headers" ]
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
    configs += [ ":spvtools_internal_config" ]
  }
}

group("SPIRV-Tools") {
  public_deps = [
    ":spvtools",
    ":spvtools_link",
    ":spvtools_opt",
    ":spvtools_reduce",
    ":spvtools_val",
  ]
}

# The tests are scoped to Chromium to avoid needing to write gtest integration.
# See Chromium's third_party/googletest/BUILD.gn for a complete integration.
if (build_with_chromium) {
  test("spvtools_test") {
    sources = [
      "test/assembly_context_test.cpp",
      "test/assembly_format_test.cpp",
      "test/binary_destroy_test.cpp",
      "test/binary_endianness_test.cpp",
      "test/binary_header_get_test.cpp",
      "test/binary_parse_test.cpp",
      "test/binary_strnlen_s_test.cpp",
      "test/binary_to_text.literal_test.cpp",
      "test/binary_to_text_test.cpp",
      "test/comment_test.cpp",
      "test/enum_set_test.cpp",
      "test/enum_string_mapping_test.cpp",
      "test/ext_inst.cldebug100_test.cpp",
      "test/ext_inst.debuginfo_test.cpp",
      "test/ext_inst.glsl_test.cpp",
      "test/ext_inst.opencl_test.cpp",
      "test/fix_word_test.cpp",
      "test/generator_magic_number_test.cpp",
      "test/hex_float_test.cpp",
      "test/immediate_int_test.cpp",
      "test/libspirv_macros_test.cpp",
      "test/name_mapper_test.cpp",
      "test/named_id_test.cpp",
      "test/opcode_make_test.cpp",
      "test/opcode_require_capabilities_test.cpp",
      "test/opcode_split_test.cpp",
      "test/opcode_table_get_test.cpp",
      "test/operand_capabilities_test.cpp",
      "test/operand_pattern_test.cpp",
      "test/operand_test.cpp",
      "test/target_env_test.cpp",
      "test/test_fixture.h",
      "test/text_advance_test.cpp",
      "test/text_destroy_test.cpp",
      "test/text_literal_test.cpp",
      "test/text_start_new_inst_test.cpp",
      "test/text_to_binary.annotation_test.cpp",
      "test/text_to_binary.barrier_test.cpp",
      "test/text_to_binary.constant_test.cpp",
      "test/text_to_binary.control_flow_test.cpp",
      "test/text_to_binary.debug_test.cpp",
      "test/text_to_binary.device_side_enqueue_test.cpp",
      "test/text_to_binary.extension_test.cpp",
      "test/text_to_binary.function_test.cpp",
      "test/text_to_binary.group_test.cpp",
      "test/text_to_binary.image_test.cpp",
      "test/text_to_binary.literal_test.cpp",
      "test/text_to_binary.memory_test.cpp",
      "test/text_to_binary.misc_test.cpp",
      "test/text_to_binary.mode_setting_test.cpp",
      "test/text_to_binary.pipe_storage_test.cpp",
      "test/text_to_binary.reserved_sampling_test.cpp",
      "test/text_to_binary.subgroup_dispatch_test.cpp",
      "test/text_to_binary.type_declaration_test.cpp",
      "test/text_to_binary_test.cpp",
      "test/text_word_get_test.cpp",
      "test/unit_spirv.cpp",
      "test/unit_spirv.h",
    ]

    deps = [
      ":spvtools",
      ":spvtools_language_header_cldebuginfo100",
      ":spvtools_language_header_debuginfo",
      ":spvtools_language_header_vkdebuginfo100",
      ":spvtools_val",
      "//testing/gmock",
      "//testing/gtest",
      "//testing/gtest:gtest_main",
      "//third_party/googletest:gmock",
      "//third_party/googletest:gtest",
    ]

    if (is_clang) {
      cflags_cc = [ "-Wno-self-assign" ]
    }

    configs += [ ":spvtools_internal_config" ]
  }
}

if (spirv_tools_standalone) {
  group("fuzzers") {
    testonly = true
    deps = [ "test/fuzzers" ]
  }
}

source_set("spvtools_util_cli_consumer") {
  sources = [
    "tools/util/cli_consumer.cpp",
    "tools/util/cli_consumer.h",
  ]
  deps = [ ":spvtools_headers" ]
  configs += [ ":spvtools_internal_config" ]
}

source_set("spvtools_software_version") {
  sources = [ "source/software_version.cpp" ]
  deps = [
    ":spvtools_build_version",
    ":spvtools_headers",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-as") {
  sources = [ "tools/as/as.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_software_version",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-dis") {
  sources = [ "tools/dis/dis.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_software_version",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-val") {
  sources = [ "tools/val/val.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_software_version",
    ":spvtools_util_cli_consumer",
    ":spvtools_val",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-cfg") {
  sources = [
    "tools/cfg/bin_to_dot.cpp",
    "tools/cfg/bin_to_dot.h",
    "tools/cfg/cfg.cpp",
  ]
  deps = [
    ":spvtools",
    ":spvtools_software_version",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-opt") {
  sources = [ "tools/opt/opt.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_opt",
    ":spvtools_software_version",
    ":spvtools_util_cli_consumer",
    ":spvtools_val",
  ]
  configs += [ ":spvtools_internal_config" ]
}

executable("spirv-link") {
  sources = [ "tools/link/linker.cpp" ]
  deps = [
    ":spvtools",
    ":spvtools_link",
    ":spvtools_opt",
    ":spvtools_software_version",
    ":spvtools_val",
  ]
  configs += [ ":spvtools_internal_config" ]
}

if (!is_ios && !spirv_is_winuwp && build_with_chromium) {
  # iOS and UWP do not allow std::system calls which spirv-fuzz
  # requires. Additionally, spirv-fuzz is only built when in a
  # Chromium checkout due to its dependency on protobuf.

  executable("spirv-fuzz") {
    sources = [ "tools/fuzz/fuzz.cpp" ]
    deps = [
      ":spvtools",
      ":spvtools_fuzz",
      ":spvtools_opt",
      ":spvtools_reduce",
      ":spvtools_software_version",
      ":spvtools_util_cli_consumer",
      ":spvtools_val",
      "//third_party/protobuf:protobuf_full",
    ]
    configs += [ ":spvtools_internal_config" ]
  }
}

if (!is_ios && !spirv_is_winuwp) {
  # iOS and UWP do not allow std::system calls which spirv-reduce
  # requires.

  executable("spirv-reduce") {
    sources = [ "tools/reduce/reduce.cpp" ]
    deps = [
      ":spvtools",
      ":spvtools_opt",
      ":spvtools_reduce",
      ":spvtools_software_version",
      ":spvtools_util_cli_consumer",
      ":spvtools_val",
    ]
    configs += [ ":spvtools_internal_config" ]
  }
}

group("all_spirv_tools") {
  deps = [
    ":spirv-as",
    ":spirv-cfg",
    ":spirv-dis",
    ":spirv-link",
    ":spirv-opt",
    ":spirv-val",
  ]
  if (!is_ios && !spirv_is_winuwp && build_with_chromium) {
    deps += [ ":spirv-fuzz" ]
  }
  if (!is_ios && !spirv_is_winuwp) {
    deps += [ ":spirv-reduce" ]
  }
}
