| # Copyright 2023 The Dawn & Tint Authors | 
 | # | 
 | # Redistribution and use in source and binary forms, with or without | 
 | # modification, are permitted provided that the following conditions are met: | 
 | # | 
 | # 1. Redistributions of source code must retain the above copyright notice, this | 
 | #    list of conditions and the following disclaimer. | 
 | # | 
 | # 2. Redistributions in binary form must reproduce the above copyright notice, | 
 | #    this list of conditions and the following disclaimer in the documentation | 
 | #    and/or other materials provided with the distribution. | 
 | # | 
 | # 3. Neither the name of the copyright holder nor the names of its | 
 | #    contributors may be used to endorse or promote products derived from | 
 | #    this software without specific prior written permission. | 
 | # | 
 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 
 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 
 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | 
 | # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 
 | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 
 | # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 
 | # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | 
 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
 |  | 
 | ################################################################################ | 
 | # File generated by 'tools/src/cmd/gen' using the template: | 
 | #   tools/src/cmd/gen/build/BUILD.bazel.tmpl | 
 | # | 
 | # To regenerate run: './tools/run gen' | 
 | # | 
 | #                       Do not modify this file directly | 
 | ################################################################################ | 
 |  | 
 | load("//src/tint:flags.bzl", "COPTS") | 
 | load("@bazel_skylib//lib:selects.bzl", "selects") | 
 | cc_library( | 
 |   name = "ir", | 
 |   srcs = [ | 
 |     "access.cc", | 
 |     "binary.cc", | 
 |     "bitcast.cc", | 
 |     "block.cc", | 
 |     "block_param.cc", | 
 |     "break_if.cc", | 
 |     "builder.cc", | 
 |     "builtin_call.cc", | 
 |     "call.cc", | 
 |     "clone_context.cc", | 
 |     "const_param_validator.cc", | 
 |     "constant.cc", | 
 |     "construct.cc", | 
 |     "continue.cc", | 
 |     "control_instruction.cc", | 
 |     "convert.cc", | 
 |     "core_binary.cc", | 
 |     "core_builtin_call.cc", | 
 |     "core_unary.cc", | 
 |     "disassembler.cc", | 
 |     "discard.cc", | 
 |     "evaluator.cc", | 
 |     "exit.cc", | 
 |     "exit_if.cc", | 
 |     "exit_loop.cc", | 
 |     "exit_switch.cc", | 
 |     "function.cc", | 
 |     "function_param.cc", | 
 |     "if.cc", | 
 |     "instruction.cc", | 
 |     "instruction_result.cc", | 
 |     "let.cc", | 
 |     "load.cc", | 
 |     "load_vector_element.cc", | 
 |     "loop.cc", | 
 |     "member_builtin_call.cc", | 
 |     "module.cc", | 
 |     "multi_in_block.cc", | 
 |     "next_iteration.cc", | 
 |     "operand_instruction.cc", | 
 |     "override.cc", | 
 |     "return.cc", | 
 |     "store.cc", | 
 |     "store_vector_element.cc", | 
 |     "switch.cc", | 
 |     "swizzle.cc", | 
 |     "terminate_invocation.cc", | 
 |     "terminator.cc", | 
 |     "unary.cc", | 
 |     "unreachable.cc", | 
 |     "unused.cc", | 
 |     "user_call.cc", | 
 |     "validator.cc", | 
 |     "value.cc", | 
 |     "var.cc", | 
 |   ], | 
 |   hdrs = [ | 
 |     "access.h", | 
 |     "binary.h", | 
 |     "bitcast.h", | 
 |     "block.h", | 
 |     "block_param.h", | 
 |     "break_if.h", | 
 |     "builder.h", | 
 |     "builtin_call.h", | 
 |     "call.h", | 
 |     "clone_context.h", | 
 |     "const_param_validator.h", | 
 |     "constant.h", | 
 |     "construct.h", | 
 |     "continue.h", | 
 |     "control_instruction.h", | 
 |     "convert.h", | 
 |     "core_binary.h", | 
 |     "core_builtin_call.h", | 
 |     "core_unary.h", | 
 |     "disassembler.h", | 
 |     "discard.h", | 
 |     "evaluator.h", | 
 |     "exit.h", | 
 |     "exit_if.h", | 
 |     "exit_loop.h", | 
 |     "exit_switch.h", | 
 |     "function.h", | 
 |     "function_param.h", | 
 |     "ice.h", | 
 |     "if.h", | 
 |     "instruction.h", | 
 |     "instruction_result.h", | 
 |     "let.h", | 
 |     "load.h", | 
 |     "load_vector_element.h", | 
 |     "loop.h", | 
 |     "member_builtin_call.h", | 
 |     "module.h", | 
 |     "multi_in_block.h", | 
 |     "next_iteration.h", | 
 |     "operand_instruction.h", | 
 |     "override.h", | 
 |     "referenced_functions.h", | 
 |     "referenced_module_decls.h", | 
 |     "referenced_module_vars.h", | 
 |     "return.h", | 
 |     "store.h", | 
 |     "store_vector_element.h", | 
 |     "switch.h", | 
 |     "swizzle.h", | 
 |     "terminate_invocation.h", | 
 |     "terminator.h", | 
 |     "traverse.h", | 
 |     "unary.h", | 
 |     "unreachable.h", | 
 |     "unused.h", | 
 |     "user_call.h", | 
 |     "validator.h", | 
 |     "value.h", | 
 |     "var.h", | 
 |   ], | 
 |   deps = [ | 
 |     "//src/tint/api/common", | 
 |     "//src/tint/lang/core", | 
 |     "//src/tint/lang/core/constant", | 
 |     "//src/tint/lang/core/intrinsic", | 
 |     "//src/tint/lang/core/ir/type", | 
 |     "//src/tint/lang/core/type", | 
 |     "//src/tint/utils", | 
 |     "//src/tint/utils/containers", | 
 |     "//src/tint/utils/diagnostic", | 
 |     "//src/tint/utils/ice", | 
 |     "//src/tint/utils/macros", | 
 |     "//src/tint/utils/math", | 
 |     "//src/tint/utils/memory", | 
 |     "//src/tint/utils/result", | 
 |     "//src/tint/utils/rtti", | 
 |     "//src/tint/utils/symbol", | 
 |     "//src/tint/utils/text", | 
 |     "//src/utils", | 
 |   ], | 
 |   copts = COPTS, | 
 |   visibility = ["//visibility:public"], | 
 | ) | 
 | cc_library( | 
 |   name = "test", | 
 |   alwayslink = True, | 
 |   srcs = [ | 
 |     "access_test.cc", | 
 |     "bitcast_test.cc", | 
 |     "block_param_test.cc", | 
 |     "block_test.cc", | 
 |     "break_if_test.cc", | 
 |     "builder_test.cc", | 
 |     "const_param_validator_test.cc", | 
 |     "constant_test.cc", | 
 |     "construct_test.cc", | 
 |     "continue_test.cc", | 
 |     "convert_test.cc", | 
 |     "core_binary_test.cc", | 
 |     "core_builtin_call_test.cc", | 
 |     "core_unary_test.cc", | 
 |     "discard_test.cc", | 
 |     "evaluator_test.cc", | 
 |     "exit_if_test.cc", | 
 |     "exit_loop_test.cc", | 
 |     "exit_switch_test.cc", | 
 |     "function_param_test.cc", | 
 |     "function_test.cc", | 
 |     "if_test.cc", | 
 |     "instruction_result_test.cc", | 
 |     "instruction_test.cc", | 
 |     "ir_helper_test.h", | 
 |     "let_test.cc", | 
 |     "load_test.cc", | 
 |     "load_vector_element_test.cc", | 
 |     "loop_test.cc", | 
 |     "module_test.cc", | 
 |     "multi_in_block_test.cc", | 
 |     "next_iteration_test.cc", | 
 |     "operand_instruction_test.cc", | 
 |     "override_test.cc", | 
 |     "referenced_functions_test.cc", | 
 |     "referenced_module_decls_test.cc", | 
 |     "referenced_module_vars_test.cc", | 
 |     "return_test.cc", | 
 |     "store_test.cc", | 
 |     "store_vector_element_test.cc", | 
 |     "switch_test.cc", | 
 |     "swizzle_test.cc", | 
 |     "terminate_invocation_test.cc", | 
 |     "traverse_test.cc", | 
 |     "unreachable_test.cc", | 
 |     "user_call_test.cc", | 
 |     "validator_access_test.cc", | 
 |     "validator_builtin_test.cc", | 
 |     "validator_call_test.cc", | 
 |     "validator_flow_control_test.cc", | 
 |     "validator_function_test.cc", | 
 |     "validator_test.cc", | 
 |     "validator_test.h", | 
 |     "validator_type_test.cc", | 
 |     "validator_value_test.cc", | 
 |     "value_test.cc", | 
 |     "var_test.cc", | 
 |   ], | 
 |   deps = [ | 
 |     "//src/tint/api/common", | 
 |     "//src/tint/lang/core", | 
 |     "//src/tint/lang/core/constant", | 
 |     "//src/tint/lang/core/intrinsic", | 
 |     "//src/tint/lang/core/ir", | 
 |     "//src/tint/lang/core/ir/type", | 
 |     "//src/tint/lang/core/type", | 
 |     "//src/tint/utils", | 
 |     "//src/tint/utils/containers", | 
 |     "//src/tint/utils/diagnostic", | 
 |     "//src/tint/utils/ice", | 
 |     "//src/tint/utils/macros", | 
 |     "//src/tint/utils/math", | 
 |     "//src/tint/utils/memory", | 
 |     "//src/tint/utils/result", | 
 |     "//src/tint/utils/rtti", | 
 |     "//src/tint/utils/symbol", | 
 |     "//src/tint/utils/text", | 
 |     "@gtest", | 
 |     "//src/utils", | 
 |   ], | 
 |   copts = COPTS, | 
 |   visibility = ["//visibility:public"], | 
 | ) | 
 | cc_library( | 
 |   name = "bench", | 
 |   alwayslink = True, | 
 |   srcs = [ | 
 |     "validator_bench.cc", | 
 |   ], | 
 |   deps = [ | 
 |     "//src/tint/api/common", | 
 |     "//src/tint/lang/core", | 
 |     "//src/tint/lang/core/constant", | 
 |     "//src/tint/lang/core/ir", | 
 |     "//src/tint/lang/core/type", | 
 |     "//src/tint/lang/wgsl", | 
 |     "//src/tint/lang/wgsl/ast", | 
 |     "//src/tint/lang/wgsl/common", | 
 |     "//src/tint/lang/wgsl/features", | 
 |     "//src/tint/lang/wgsl/program", | 
 |     "//src/tint/lang/wgsl/sem", | 
 |     "//src/tint/utils", | 
 |     "//src/tint/utils/containers", | 
 |     "//src/tint/utils/diagnostic", | 
 |     "//src/tint/utils/ice", | 
 |     "//src/tint/utils/macros", | 
 |     "//src/tint/utils/math", | 
 |     "//src/tint/utils/memory", | 
 |     "//src/tint/utils/result", | 
 |     "//src/tint/utils/rtti", | 
 |     "//src/tint/utils/symbol", | 
 |     "//src/tint/utils/text", | 
 |     "@benchmark", | 
 |     "//src/utils", | 
 |   ] + select({ | 
 |     ":tint_build_wgsl_reader": [ | 
 |       "//src/tint/cmd/bench:bench", | 
 |       "//src/tint/lang/wgsl/reader", | 
 |     ], | 
 |     "//conditions:default": [], | 
 |   }), | 
 |   copts = COPTS, | 
 |   visibility = ["//visibility:public"], | 
 | ) | 
 |  | 
 | alias( | 
 |   name = "tint_build_wgsl_reader", | 
 |   actual = "//src/tint:tint_build_wgsl_reader_true", | 
 | ) | 
 |  |