[tint] Move WGSL-exclusive enums back to lang/wgsl From lang/core. Change-Id: I87d91f7d0653313c52e16b7a08d2d73ffb564369 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/151920 Reviewed-by: dan sinclair <dsinclair@chromium.org> Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/tint/api/BUILD.bazel b/src/tint/api/BUILD.bazel index 950f202..00f3628 100644 --- a/src/tint/api/BUILD.bazel +++ b/src/tint/api/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader",
diff --git a/src/tint/api/BUILD.cmake b/src/tint/api/BUILD.cmake index 0329dcd..05e09ff 100644 --- a/src/tint/api/BUILD.cmake +++ b/src/tint/api/BUILD.cmake
@@ -41,6 +41,7 @@ tint_lang_core_type tint_lang_hlsl_writer_common tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader
diff --git a/src/tint/api/BUILD.gn b/src/tint/api/BUILD.gn index fa28e6f..e70d3af 100644 --- a/src/tint/api/BUILD.gn +++ b/src/tint/api/BUILD.gn
@@ -38,6 +38,7 @@ "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/reader",
diff --git a/src/tint/cmd/bench/BUILD.bazel b/src/tint/cmd/bench/BUILD.bazel index 450439a..7995335 100644 --- a/src/tint/cmd/bench/BUILD.bazel +++ b/src/tint/cmd/bench/BUILD.bazel
@@ -35,6 +35,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -66,6 +67,7 @@ "//src/tint/lang/core/type", "//src/tint/lang/core:bench", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader", @@ -73,6 +75,7 @@ "//src/tint/lang/wgsl/sem", "//src/tint/lang/wgsl/writer", "//src/tint/lang/wgsl/writer:bench", + "//src/tint/lang/wgsl:bench", "//src/tint/utils/containers", "//src/tint/utils/diagnostic", "//src/tint/utils/ice",
diff --git a/src/tint/cmd/bench/BUILD.cmake b/src/tint/cmd/bench/BUILD.cmake index e6ec3dd..fdde451 100644 --- a/src/tint/cmd/bench/BUILD.cmake +++ b/src/tint/cmd/bench/BUILD.cmake
@@ -34,6 +34,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -66,6 +67,7 @@ tint_lang_core_type tint_lang_core_bench tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader @@ -73,6 +75,7 @@ tint_lang_wgsl_sem tint_lang_wgsl_writer tint_lang_wgsl_writer_bench + tint_lang_wgsl_bench tint_utils_containers tint_utils_diagnostic tint_utils_ice
diff --git a/src/tint/cmd/bench/BUILD.gn b/src/tint/cmd/bench/BUILD.gn index 484acf7..e17e2de 100644 --- a/src/tint/cmd/bench/BUILD.gn +++ b/src/tint/cmd/bench/BUILD.gn
@@ -34,6 +34,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/cmd/common/BUILD.bazel b/src/tint/cmd/common/BUILD.bazel index 4215394..7cf4691 100644 --- a/src/tint/cmd/common/BUILD.bazel +++ b/src/tint/cmd/common/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/inspector", "//src/tint/lang/wgsl/program", @@ -86,6 +87,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver",
diff --git a/src/tint/cmd/common/BUILD.cmake b/src/tint/cmd/common/BUILD.cmake index 01f44f5..a10c867 100644 --- a/src/tint/cmd/common/BUILD.cmake +++ b/src/tint/cmd/common/BUILD.cmake
@@ -39,6 +39,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_inspector tint_lang_wgsl_program @@ -87,6 +88,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver
diff --git a/src/tint/cmd/common/BUILD.gn b/src/tint/cmd/common/BUILD.gn index 2b10c18..b66d0ba 100644 --- a/src/tint/cmd/common/BUILD.gn +++ b/src/tint/cmd/common/BUILD.gn
@@ -43,6 +43,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/inspector", "${tint_src_dir}/lang/wgsl/program", @@ -87,6 +88,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver",
diff --git a/src/tint/cmd/info/BUILD.bazel b/src/tint/cmd/info/BUILD.bazel index 9e5f3b2..3b9fc16 100644 --- a/src/tint/cmd/info/BUILD.bazel +++ b/src/tint/cmd/info/BUILD.bazel
@@ -35,6 +35,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/inspector", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/cmd/info/BUILD.cmake b/src/tint/cmd/info/BUILD.cmake index 10870a1..d15b74e 100644 --- a/src/tint/cmd/info/BUILD.cmake +++ b/src/tint/cmd/info/BUILD.cmake
@@ -36,6 +36,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_inspector tint_lang_wgsl_program
diff --git a/src/tint/cmd/info/BUILD.gn b/src/tint/cmd/info/BUILD.gn index c049a44..e9d84ce 100644 --- a/src/tint/cmd/info/BUILD.gn +++ b/src/tint/cmd/info/BUILD.gn
@@ -35,6 +35,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/inspector", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/cmd/loopy/BUILD.bazel b/src/tint/cmd/loopy/BUILD.bazel index 2d2910c..194e728 100644 --- a/src/tint/cmd/loopy/BUILD.bazel +++ b/src/tint/cmd/loopy/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/helpers", "//src/tint/lang/wgsl/inspector",
diff --git a/src/tint/cmd/loopy/BUILD.cmake b/src/tint/cmd/loopy/BUILD.cmake index 0e12784..86eee38 100644 --- a/src/tint/cmd/loopy/BUILD.cmake +++ b/src/tint/cmd/loopy/BUILD.cmake
@@ -40,6 +40,7 @@ tint_lang_core_type tint_lang_hlsl_writer_common tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_helpers tint_lang_wgsl_inspector
diff --git a/src/tint/cmd/loopy/BUILD.gn b/src/tint/cmd/loopy/BUILD.gn index fa59018..4c54f72 100644 --- a/src/tint/cmd/loopy/BUILD.gn +++ b/src/tint/cmd/loopy/BUILD.gn
@@ -39,6 +39,7 @@ "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/helpers", "${tint_src_dir}/lang/wgsl/inspector",
diff --git a/src/tint/cmd/tint/BUILD.bazel b/src/tint/cmd/tint/BUILD.bazel index 410ea9d..321c15e 100644 --- a/src/tint/cmd/tint/BUILD.bazel +++ b/src/tint/cmd/tint/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/helpers",
diff --git a/src/tint/cmd/tint/BUILD.cmake b/src/tint/cmd/tint/BUILD.cmake index 32fc985..1d500ac 100644 --- a/src/tint/cmd/tint/BUILD.cmake +++ b/src/tint/cmd/tint/BUILD.cmake
@@ -40,6 +40,7 @@ tint_lang_core_type tint_lang_hlsl_writer_common tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_helpers
diff --git a/src/tint/cmd/tint/BUILD.gn b/src/tint/cmd/tint/BUILD.gn index b53853e..e6c897c 100644 --- a/src/tint/cmd/tint/BUILD.gn +++ b/src/tint/cmd/tint/BUILD.gn
@@ -39,6 +39,7 @@ "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/helpers",
diff --git a/src/tint/cmd/tint/main.cc b/src/tint/cmd/tint/main.cc index da47439..31d7286 100644 --- a/src/tint/cmd/tint/main.cc +++ b/src/tint/cmd/tint/main.cc
@@ -718,10 +718,10 @@ // If subgroups are used, bump the version to 2.1. auto msl_version = tint::msl::validate::MslVersion::kMsl_1_2; for (auto* enable : program->AST().Enables()) { - if (enable->HasExtension(tint::core::Extension::kChromiumExperimentalSubgroups)) { + if (enable->HasExtension(tint::wgsl::Extension::kChromiumExperimentalSubgroups)) { msl_version = std::max(msl_version, tint::msl::validate::MslVersion::kMsl_2_1); } - if (enable->HasExtension(tint::core::Extension::kChromiumExperimentalPixelLocal)) { + if (enable->HasExtension(tint::wgsl::Extension::kChromiumExperimentalPixelLocal)) { msl_version = std::max(msl_version, tint::msl::validate::MslVersion::kMsl_2_3); } } @@ -806,7 +806,7 @@ auto enable_list = program->AST().Enables(); bool dxc_require_16bit_types = false; for (auto* enable : enable_list) { - if (enable->HasExtension(tint::core::Extension::kF16)) { + if (enable->HasExtension(tint::wgsl::Extension::kF16)) { dxc_require_16bit_types = true; break; }
diff --git a/src/tint/fuzzers/tint_common_fuzzer.cc b/src/tint/fuzzers/tint_common_fuzzer.cc index 421cbbc..93ec9ea 100644 --- a/src/tint/fuzzers/tint_common_fuzzer.cc +++ b/src/tint/fuzzers/tint_common_fuzzer.cc
@@ -189,7 +189,7 @@ } // Helper that returns `true` if the program uses the given extension. - auto uses_extension = [&program](tint::core::Extension extension) { + auto uses_extension = [&program](tint::wgsl::Extension extension) { for (auto* enable : program.AST().Enables()) { if (enable->HasExtension(extension)) { return true; @@ -301,7 +301,7 @@ #if TINT_BUILD_SPV_WRITER // Skip fuzzing the SPIR-V writer when the `clamp_frag_depth` option is used with a // module that already contains push constants. - if (uses_extension(tint::core::Extension::kChromiumExperimentalPushConstant) && + if (uses_extension(tint::wgsl::Extension::kChromiumExperimentalPushConstant) && options_spirv_.clamp_frag_depth) { return 0; }
diff --git a/src/tint/fuzzers/tint_ir_roundtrip_fuzzer.cc b/src/tint/fuzzers/tint_ir_roundtrip_fuzzer.cc index 4df9f49..74e198f 100644 --- a/src/tint/fuzzers/tint_ir_roundtrip_fuzzer.cc +++ b/src/tint/fuzzers/tint_ir_roundtrip_fuzzer.cc
@@ -48,12 +48,12 @@ auto is_unsupported = [](const tint::ast::Enable* enable) { for (auto ext : enable->extensions) { switch (ext->name) { - case tint::core::Extension::kChromiumExperimentalDp4A: - case tint::core::Extension::kChromiumExperimentalFullPtrParameters: - case tint::core::Extension::kChromiumExperimentalPixelLocal: - case tint::core::Extension::kChromiumExperimentalPushConstant: - case tint::core::Extension::kChromiumInternalDualSourceBlending: - case tint::core::Extension::kChromiumInternalRelaxedUniformLayout: + case tint::wgsl::Extension::kChromiumExperimentalDp4A: + case tint::wgsl::Extension::kChromiumExperimentalFullPtrParameters: + case tint::wgsl::Extension::kChromiumExperimentalPixelLocal: + case tint::wgsl::Extension::kChromiumExperimentalPushConstant: + case tint::wgsl::Extension::kChromiumInternalDualSourceBlending: + case tint::wgsl::Extension::kChromiumInternalRelaxedUniformLayout: return true; default: break;
diff --git a/src/tint/lang/core/BUILD.bazel b/src/tint/lang/core/BUILD.bazel index ce01f3f..8f69c1d 100644 --- a/src/tint/lang/core/BUILD.bazel +++ b/src/tint/lang/core/BUILD.bazel
@@ -32,9 +32,6 @@ "binary_op.cc", "builtin.cc", "builtin_value.cc", - "diagnostic_rule.cc", - "diagnostic_severity.cc", - "extension.cc", "function.cc", "interpolation_sampling.cc", "interpolation_type.cc", @@ -50,10 +47,7 @@ "binary_op.h", "builtin.h", "builtin_value.h", - "diagnostic_rule.h", - "diagnostic_severity.h", "evaluation_stage.h", - "extension.h", "fluent_types.h", "function.h", "interpolation.h", @@ -65,14 +59,10 @@ "unary_op.h", ], deps = [ - "//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/text", "//src/tint/utils/traits", ], @@ -88,9 +78,6 @@ "attribute_test.cc", "builtin_test.cc", "builtin_value_test.cc", - "diagnostic_rule_test.cc", - "diagnostic_severity_test.cc", - "extension_test.cc", "interpolation_sampling_test.cc", "interpolation_type_test.cc", "number_test.cc", @@ -101,6 +88,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -130,23 +118,12 @@ "attribute_bench.cc", "builtin_bench.cc", "builtin_value_bench.cc", - "diagnostic_rule_bench.cc", - "diagnostic_severity_bench.cc", - "extension_bench.cc", "interpolation_sampling_bench.cc", "interpolation_type_bench.cc", "texel_format_bench.cc", ], deps = [ "//src/tint/lang/core", - "//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/rtti", - "//src/tint/utils/text", "//src/tint/utils/traits", ], copts = COPTS,
diff --git a/src/tint/lang/core/BUILD.cmake b/src/tint/lang/core/BUILD.cmake index 6be18a3..5e02dac 100644 --- a/src/tint/lang/core/BUILD.cmake +++ b/src/tint/lang/core/BUILD.cmake
@@ -43,13 +43,7 @@ lang/core/builtin.h lang/core/builtin_value.cc lang/core/builtin_value.h - lang/core/diagnostic_rule.cc - lang/core/diagnostic_rule.h - lang/core/diagnostic_severity.cc - lang/core/diagnostic_severity.h lang/core/evaluation_stage.h - lang/core/extension.cc - lang/core/extension.h lang/core/fluent_types.h lang/core/function.cc lang/core/function.h @@ -69,14 +63,10 @@ ) tint_target_add_dependencies(tint_lang_core lib - tint_utils_containers - tint_utils_diagnostic tint_utils_ice tint_utils_macros - tint_utils_math tint_utils_memory tint_utils_result - tint_utils_rtti tint_utils_text tint_utils_traits ) @@ -91,9 +81,6 @@ lang/core/attribute_test.cc lang/core/builtin_test.cc lang/core/builtin_value_test.cc - lang/core/diagnostic_rule_test.cc - lang/core/diagnostic_severity_test.cc - lang/core/extension_test.cc lang/core/interpolation_sampling_test.cc lang/core/interpolation_type_test.cc lang/core/number_test.cc @@ -105,6 +92,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -137,9 +125,6 @@ lang/core/attribute_bench.cc lang/core/builtin_bench.cc lang/core/builtin_value_bench.cc - lang/core/diagnostic_rule_bench.cc - lang/core/diagnostic_severity_bench.cc - lang/core/extension_bench.cc lang/core/interpolation_sampling_bench.cc lang/core/interpolation_type_bench.cc lang/core/texel_format_bench.cc @@ -147,13 +132,5 @@ tint_target_add_dependencies(tint_lang_core_bench bench tint_lang_core - tint_utils_containers - tint_utils_diagnostic - tint_utils_ice - tint_utils_macros - tint_utils_math - tint_utils_memory - tint_utils_rtti - tint_utils_text tint_utils_traits )
diff --git a/src/tint/lang/core/BUILD.gn b/src/tint/lang/core/BUILD.gn index d7f838f..c096493 100644 --- a/src/tint/lang/core/BUILD.gn +++ b/src/tint/lang/core/BUILD.gn
@@ -43,13 +43,7 @@ "builtin.h", "builtin_value.cc", "builtin_value.h", - "diagnostic_rule.cc", - "diagnostic_rule.h", - "diagnostic_severity.cc", - "diagnostic_severity.h", "evaluation_stage.h", - "extension.cc", - "extension.h", "fluent_types.h", "function.cc", "function.h", @@ -68,14 +62,10 @@ "unary_op.h", ] deps = [ - "${tint_src_dir}/utils/containers", - "${tint_src_dir}/utils/diagnostic", "${tint_src_dir}/utils/ice", "${tint_src_dir}/utils/macros", - "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", "${tint_src_dir}/utils/result", - "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/text", "${tint_src_dir}/utils/traits", ] @@ -89,9 +79,6 @@ "attribute_test.cc", "builtin_test.cc", "builtin_value_test.cc", - "diagnostic_rule_test.cc", - "diagnostic_severity_test.cc", - "extension_test.cc", "interpolation_sampling_test.cc", "interpolation_type_test.cc", "number_test.cc", @@ -103,6 +90,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/core/constant/BUILD.bazel b/src/tint/lang/core/constant/BUILD.bazel index 95c577b..402a7e3 100644 --- a/src/tint/lang/core/constant/BUILD.bazel +++ b/src/tint/lang/core/constant/BUILD.bazel
@@ -91,6 +91,7 @@ "//src/tint/lang/core/intrinsic", "//src/tint/lang/core/type", "//src/tint/lang/core/type:test", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader",
diff --git a/src/tint/lang/core/constant/BUILD.cmake b/src/tint/lang/core/constant/BUILD.cmake index c8a657a..d3829a2 100644 --- a/src/tint/lang/core/constant/BUILD.cmake +++ b/src/tint/lang/core/constant/BUILD.cmake
@@ -90,6 +90,7 @@ tint_lang_core_intrinsic tint_lang_core_type tint_lang_core_type_test + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader
diff --git a/src/tint/lang/core/constant/BUILD.gn b/src/tint/lang/core/constant/BUILD.gn index cbb4a13..39ae73f 100644 --- a/src/tint/lang/core/constant/BUILD.gn +++ b/src/tint/lang/core/constant/BUILD.gn
@@ -93,6 +93,7 @@ "${tint_src_dir}/lang/core/intrinsic", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/core/type:unittests", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/reader",
diff --git a/src/tint/lang/core/constant/eval_binary_op_test.cc b/src/tint/lang/core/constant/eval_binary_op_test.cc index ed064a7..8860d48 100644 --- a/src/tint/lang/core/constant/eval_binary_op_test.cc +++ b/src/tint/lang/core/constant/eval_binary_op_test.cc
@@ -84,7 +84,7 @@ using ConstEvalBinaryOpTest = ConstEvalTestWithParam<std::tuple<core::BinaryOp, Case>>; TEST_P(ConstEvalBinaryOpTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto op = std::get<0>(GetParam()); auto& c = std::get<1>(GetParam());
diff --git a/src/tint/lang/core/constant/eval_builtin_test.cc b/src/tint/lang/core/constant/eval_builtin_test.cc index 7b1e198..6a31120 100644 --- a/src/tint/lang/core/constant/eval_builtin_test.cc +++ b/src/tint/lang/core/constant/eval_builtin_test.cc
@@ -142,7 +142,7 @@ using ConstEvalBuiltinTest = ConstEvalTestWithParam<std::tuple<core::Function, Case>>; TEST_P(ConstEvalBuiltinTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto builtin = std::get<0>(GetParam()); auto& c = std::get<1>(GetParam());
diff --git a/src/tint/lang/core/constant/eval_construction_test.cc b/src/tint/lang/core/constant/eval_construction_test.cc index f9f7c29..36b5ace 100644 --- a/src/tint/lang/core/constant/eval_construction_test.cc +++ b/src/tint/lang/core/constant/eval_construction_test.cc
@@ -98,7 +98,7 @@ } TEST_F(ConstEvalTest, Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Expr(9.9_h); WrapInFunction(expr); @@ -140,7 +140,7 @@ } using ConstEvalZeroInitTest = ConstEvalTestWithParam<Case>; TEST_P(ConstEvalZeroInitTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto& param = GetParam(); auto ty = param.type(*this); auto* expr = Call(ty); @@ -296,7 +296,7 @@ } TEST_F(ConstEvalTest, Vec3_ZeroInit_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(); WrapInFunction(expr); @@ -443,7 +443,7 @@ } TEST_F(ConstEvalTest, Vec3_Splat_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(9.9_h); WrapInFunction(expr); @@ -651,7 +651,7 @@ } TEST_F(ConstEvalTest, Vec3_FullConstruct_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(1_h, 2_h, 3_h); WrapInFunction(expr); @@ -914,7 +914,7 @@ } TEST_F(ConstEvalTest, Vec3_MixConstruct_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(1_h, Call<vec2<f16>>(2_h, 3_h)); WrapInFunction(expr); @@ -945,7 +945,7 @@ } TEST_F(ConstEvalTest, Vec3_MixConstruct_f16_all_10) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(10_h, Call<vec2<f16>>(10_h, 10_h)); WrapInFunction(expr); @@ -976,7 +976,7 @@ } TEST_F(ConstEvalTest, Vec3_MixConstruct_f16_all_positive_0) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(0_h, Call<vec2<f16>>(0_h, 0_h)); WrapInFunction(expr); @@ -1007,7 +1007,7 @@ } TEST_F(ConstEvalTest, Vec3_MixConstruct_f16_all_negative_0) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(Call<vec2<f16>>(-0_h, -0_h), -0_h); WrapInFunction(expr); @@ -1038,7 +1038,7 @@ } TEST_F(ConstEvalTest, Vec3_MixConstruct_f16_mixed_sign_0) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(0_h, Call<vec2<f16>>(-0_h, 0_h)); WrapInFunction(expr); @@ -1198,7 +1198,7 @@ } TEST_F(ConstEvalTest, Mat2x3_ZeroInit_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<mat2x3<f16>>(); WrapInFunction(expr); @@ -1513,7 +1513,7 @@ using ResolverConstEvalArrayInitTest = ConstEvalTestWithParam<Case>; TEST_P(ResolverConstEvalArrayInitTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto& param = GetParam(); auto* expr = param.input.Expr(*this); auto* a = Const("a", expr); @@ -1686,7 +1686,7 @@ } TEST_F(ConstEvalTest, Struct_ZeroInit) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a", ty.i32()), Member("b", ty.u32()), @@ -1729,7 +1729,7 @@ } TEST_F(ConstEvalTest, Struct_Nested_ZeroInit) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* inner = Structure("Inner", Vector{ Member("a", ty.i32()), Member("b", ty.u32()), @@ -1812,7 +1812,7 @@ } TEST_F(ConstEvalTest, Struct_MixedScalars_ZeroInit) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{ Member("m1", ty.i32()), @@ -1924,7 +1924,7 @@ } TEST_F(ConstEvalTest, Struct_MixedVectors_ZeroInit) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{ Member("m1", ty.vec2<i32>()), @@ -2055,7 +2055,7 @@ } TEST_F(ConstEvalTest, Struct_MixedScalars_Construct) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{ Member("m1", ty.i32()), @@ -2106,7 +2106,7 @@ } TEST_F(ConstEvalTest, Struct_MixedVectors_Construct) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{ Member("m1", ty.vec2<i32>()),
diff --git a/src/tint/lang/core/constant/eval_conversion_test.cc b/src/tint/lang/core/constant/eval_conversion_test.cc index c55bea2..2ff6ce6 100644 --- a/src/tint/lang/core/constant/eval_conversion_test.cc +++ b/src/tint/lang/core/constant/eval_conversion_test.cc
@@ -284,7 +284,7 @@ } TEST_F(ConstEvalTest, Vec3_Convert_f16_to_i32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<i32>>(Call<vec3<f16>>(1.1_h, 2.2_h, 3.3_h)); WrapInFunction(expr); @@ -315,7 +315,7 @@ } TEST_F(ConstEvalTest, Vec3_Convert_u32_to_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(Call<vec3<u32>>(10_u, 20_u, 30_u)); WrapInFunction(expr); @@ -404,7 +404,7 @@ } TEST_F(ConstEvalTest, Vec3_Convert_Large_f32_to_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<vec3<f16>>(Source{{12, 34}}, Call<vec3<f32>>(1e10_f, 0_f, 0_f)); WrapInFunction(expr); @@ -414,7 +414,7 @@ } TEST_F(ConstEvalTest, Vec3_Convert_Small_f32_to_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // These values are chosen to force underflow when converting to f16. // When the result is zero, the sign bit is *not* guaranteed to be preserved.
diff --git a/src/tint/lang/core/constant/eval_indexing_test.cc b/src/tint/lang/core/constant/eval_indexing_test.cc index 90cd759..71d7a02 100644 --- a/src/tint/lang/core/constant/eval_indexing_test.cc +++ b/src/tint/lang/core/constant/eval_indexing_test.cc
@@ -68,7 +68,7 @@ using ConstEvalSwizzleTest = ConstEvalTestWithParam<Case>; TEST_P(ConstEvalSwizzleTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto& param = GetParam(); auto* expr = MemberAccessor(param.input.Expr(*this), param.swizzle); auto* a = Const("a", expr);
diff --git a/src/tint/lang/core/constant/eval_member_access_test.cc b/src/tint/lang/core/constant/eval_member_access_test.cc index 4bf4001..0d7b71f 100644 --- a/src/tint/lang/core/constant/eval_member_access_test.cc +++ b/src/tint/lang/core/constant/eval_member_access_test.cc
@@ -258,7 +258,7 @@ using ConstEvalArrayAccessTest = ConstEvalTestWithParam<Case>; TEST_P(ConstEvalArrayAccessTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto& param = GetParam(); auto* expr = param.input.Expr(*this); @@ -333,7 +333,7 @@ using ConstEvalVectorAccessTest = ConstEvalTestWithParam<Case>; TEST_P(ConstEvalVectorAccessTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto& param = GetParam(); auto* expr = param.input.Expr(*this);
diff --git a/src/tint/lang/core/constant/eval_unary_op_test.cc b/src/tint/lang/core/constant/eval_unary_op_test.cc index 668cf21..a7a7511 100644 --- a/src/tint/lang/core/constant/eval_unary_op_test.cc +++ b/src/tint/lang/core/constant/eval_unary_op_test.cc
@@ -42,7 +42,7 @@ using ConstEvalUnaryOpTest = ConstEvalTestWithParam<std::tuple<core::UnaryOp, Case>>; TEST_P(ConstEvalUnaryOpTest, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto op = std::get<0>(GetParam()); auto& c = std::get<1>(GetParam());
diff --git a/src/tint/lang/core/core.def b/src/tint/lang/core/core.def index b52d9bb..77b445a 100644 --- a/src/tint/lang/core/core.def +++ b/src/tint/lang/core/core.def
@@ -46,52 +46,6 @@ __point_size } -// https://gpuweb.github.io/gpuweb/wgsl/#filterable-triggering-rules -enum core_diagnostic_rule { - // Rules defined in the spec. - derivative_uniformity -} - -// chromium-specific diagnostics -enum chromium_diagnostic_rule { - // Chromium specific rules not defined in the spec. - unreachable_code -} - -// https://gpuweb.github.io/gpuweb/wgsl/#syntax-severity_control_name -enum diagnostic_severity { - error - warning - info - off -} - -// https://gpuweb.github.io/gpuweb/wgsl/#extension -enum extension { - // WGSL Extension "f16" - f16 - // An extension for the experimental feature "chromium_experimental_dp4a". - // See crbug.com/tint/1497 for more details - chromium_experimental_dp4a - // A Chromium-specific extension for disabling uniformity analysis. - chromium_disable_uniformity_analysis - // A Chromium-specific extension for push constants - chromium_experimental_push_constant - // A Chromium-specific extension that enables passing of uniform, storage and workgroup - // address-spaced pointers as parameters, as well as pointers into sub-objects. - chromium_experimental_full_ptr_parameters - // A Chromium-specific extension that adds support for read-write storage textures. - chromium_experimental_read_write_storage_texture - // A Chromium-specific extension that adds basic subgroup functionality. - chromium_experimental_subgroups - // A Chromium-specific extension that relaxes memory layout requirements for uniform storage. - chromium_internal_relaxed_uniform_layout - // A Chromium-specific extension that enables dual source blending. - chromium_internal_dual_source_blending - // A Chromium-specific extension that enables pixel local storage. - chromium_experimental_pixel_local -} - // https://gpuweb.github.io/gpuweb/wgsl/#storage-class enum address_space { function
diff --git a/src/tint/lang/core/intrinsic/BUILD.bazel b/src/tint/lang/core/intrinsic/BUILD.bazel index de13dd6..2ef3c24 100644 --- a/src/tint/lang/core/intrinsic/BUILD.bazel +++ b/src/tint/lang/core/intrinsic/BUILD.bazel
@@ -68,6 +68,7 @@ "//src/tint/lang/core/intrinsic/data", "//src/tint/lang/core/type", "//src/tint/lang/core/type:test", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver",
diff --git a/src/tint/lang/core/intrinsic/BUILD.cmake b/src/tint/lang/core/intrinsic/BUILD.cmake index 4aa2870..713c8eb 100644 --- a/src/tint/lang/core/intrinsic/BUILD.cmake +++ b/src/tint/lang/core/intrinsic/BUILD.cmake
@@ -69,6 +69,7 @@ tint_lang_core_intrinsic_data tint_lang_core_type tint_lang_core_type_test + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver
diff --git a/src/tint/lang/core/intrinsic/BUILD.gn b/src/tint/lang/core/intrinsic/BUILD.gn index c5b985b..f66d3fe 100644 --- a/src/tint/lang/core/intrinsic/BUILD.gn +++ b/src/tint/lang/core/intrinsic/BUILD.gn
@@ -68,6 +68,7 @@ "${tint_src_dir}/lang/core/intrinsic/data", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/core/type:unittests", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver",
diff --git a/src/tint/lang/core/type/BUILD.bazel b/src/tint/lang/core/type/BUILD.bazel index 4103661..c36edbc 100644 --- a/src/tint/lang/core/type/BUILD.bazel +++ b/src/tint/lang/core/type/BUILD.bazel
@@ -150,6 +150,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver",
diff --git a/src/tint/lang/core/type/BUILD.cmake b/src/tint/lang/core/type/BUILD.cmake index d3349e9..107db59 100644 --- a/src/tint/lang/core/type/BUILD.cmake +++ b/src/tint/lang/core/type/BUILD.cmake
@@ -149,6 +149,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver
diff --git a/src/tint/lang/core/type/BUILD.gn b/src/tint/lang/core/type/BUILD.gn index 2da1377..c80abf5 100644 --- a/src/tint/lang/core/type/BUILD.gn +++ b/src/tint/lang/core/type/BUILD.gn
@@ -152,6 +152,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver",
diff --git a/src/tint/lang/glsl/writer/BUILD.bazel b/src/tint/lang/glsl/writer/BUILD.bazel index 00cd0bd..a0e6bb2 100644 --- a/src/tint/lang/glsl/writer/BUILD.bazel +++ b/src/tint/lang/glsl/writer/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -79,6 +80,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/glsl/writer/BUILD.cmake b/src/tint/lang/glsl/writer/BUILD.cmake index 3a28fff..232ff0d 100644 --- a/src/tint/lang/glsl/writer/BUILD.cmake +++ b/src/tint/lang/glsl/writer/BUILD.cmake
@@ -44,6 +44,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -89,6 +90,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/glsl/writer/BUILD.gn b/src/tint/lang/glsl/writer/BUILD.gn index 96d9eb7..96574b1 100644 --- a/src/tint/lang/glsl/writer/BUILD.gn +++ b/src/tint/lang/glsl/writer/BUILD.gn
@@ -38,6 +38,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/glsl/writer/ast_printer/BUILD.bazel b/src/tint/lang/glsl/writer/ast_printer/BUILD.bazel index 35217ed..23ab99f 100644 --- a/src/tint/lang/glsl/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/glsl/writer/ast_printer/BUILD.bazel
@@ -37,6 +37,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/helpers", @@ -115,6 +116,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast:test",
diff --git a/src/tint/lang/glsl/writer/ast_printer/BUILD.cmake b/src/tint/lang/glsl/writer/ast_printer/BUILD.cmake index 2addfbb..80b5a82 100644 --- a/src/tint/lang/glsl/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/glsl/writer/ast_printer/BUILD.cmake
@@ -38,6 +38,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_helpers @@ -121,6 +122,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_test
diff --git a/src/tint/lang/glsl/writer/ast_printer/BUILD.gn b/src/tint/lang/glsl/writer/ast_printer/BUILD.gn index 690ceb2..fc1c41e 100644 --- a/src/tint/lang/glsl/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/glsl/writer/ast_printer/BUILD.gn
@@ -40,6 +40,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/helpers", @@ -119,6 +120,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/ast/transform",
diff --git a/src/tint/lang/glsl/writer/ast_printer/ast_printer.cc b/src/tint/lang/glsl/writer/ast_printer/ast_printer.cc index b99b1bd..839cdb1 100644 --- a/src/tint/lang/glsl/writer/ast_printer/ast_printer.cc +++ b/src/tint/lang/glsl/writer/ast_printer/ast_printer.cc
@@ -280,13 +280,13 @@ if (!tint::writer::CheckSupportedExtensions( "GLSL", builder_.AST(), diagnostics_, Vector{ - core::Extension::kChromiumDisableUniformityAnalysis, - core::Extension::kChromiumExperimentalDp4A, - core::Extension::kChromiumExperimentalFullPtrParameters, - core::Extension::kChromiumInternalDualSourceBlending, - core::Extension::kChromiumExperimentalReadWriteStorageTexture, - core::Extension::kChromiumExperimentalPushConstant, - core::Extension::kF16, + wgsl::Extension::kChromiumDisableUniformityAnalysis, + wgsl::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kChromiumExperimentalFullPtrParameters, + wgsl::Extension::kChromiumInternalDualSourceBlending, + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture, + wgsl::Extension::kChromiumExperimentalPushConstant, + wgsl::Extension::kF16, })) { return false; } @@ -378,11 +378,11 @@ void ASTPrinter::RecordExtension(const ast::Enable* enable) { // Deal with extension node here, recording it within the generator for later emition. - if (enable->HasExtension(core::Extension::kF16)) { + if (enable->HasExtension(wgsl::Extension::kF16)) { requires_f16_extension_ = true; } - if (enable->HasExtension(core::Extension::kChromiumInternalDualSourceBlending)) { + if (enable->HasExtension(wgsl::Extension::kChromiumInternalDualSourceBlending)) { requires_dual_source_blending_extension_ = true; } }
diff --git a/src/tint/lang/glsl/writer/ast_printer/ast_printer_test.cc b/src/tint/lang/glsl/writer/ast_printer/ast_printer_test.cc index e699eea..d0445c3 100644 --- a/src/tint/lang/glsl/writer/ast_printer/ast_printer_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/ast_printer_test.cc
@@ -109,7 +109,7 @@ } TEST_F(GlslASTPrinterTest, UnsupportedExtension) { - Enable(Source{{12, 34}}, core::Extension::kUndefined); + Enable(Source{{12, 34}}, wgsl::Extension::kUndefined); ASTPrinter& gen = Build();
diff --git a/src/tint/lang/glsl/writer/ast_printer/binary_test.cc b/src/tint/lang/glsl/writer/ast_printer/binary_test.cc index f980c78..22093c5 100644 --- a/src/tint/lang/glsl/writer/ast_printer/binary_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/binary_test.cc
@@ -76,7 +76,7 @@ return; } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("left", ty.f16(), core::AddressSpace::kPrivate); GlobalVar("right", ty.f16(), core::AddressSpace::kPrivate); @@ -178,7 +178,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_VectorScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", Call<vec3<f16>>(1_h, 1_h, 1_h), core::AddressSpace::kPrivate); auto* lhs = Expr("a"); @@ -214,7 +214,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_ScalarVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", Call<vec3<f16>>(1_h, 1_h, 1_h), core::AddressSpace::kPrivate); auto* lhs = Expr(1_h); @@ -249,7 +249,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_MatrixScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr("mat"); @@ -283,7 +283,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_ScalarMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr(1_h); @@ -317,7 +317,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_MatrixVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr("mat"); @@ -351,7 +351,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_VectorMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -384,7 +384,7 @@ } TEST_F(GlslASTPrinterTest_Binary, Multiply_MatrixMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("lhs", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); GlobalVar("rhs", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); @@ -416,7 +416,7 @@ } TEST_F(GlslASTPrinterTest_Binary, ModF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.f16(), core::AddressSpace::kPrivate); GlobalVar("b", ty.f16(), core::AddressSpace::kPrivate); @@ -448,7 +448,7 @@ } TEST_F(GlslASTPrinterTest_Binary, ModVec3F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec3<f16>(), core::AddressSpace::kPrivate); GlobalVar("b", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -480,7 +480,7 @@ } TEST_F(GlslASTPrinterTest_Binary, ModVec3F16ScalarF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec3<f16>(), core::AddressSpace::kPrivate); GlobalVar("b", ty.f16(), core::AddressSpace::kPrivate); @@ -512,7 +512,7 @@ } TEST_F(GlslASTPrinterTest_Binary, ModScalarF16Vec3F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.f16(), core::AddressSpace::kPrivate); GlobalVar("b", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -572,7 +572,7 @@ } TEST_F(GlslASTPrinterTest_Binary, ModMixedVec3ScalarF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec3<f16>(), core::AddressSpace::kPrivate); GlobalVar("b", ty.f16(), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/glsl/writer/ast_printer/bitcast_test.cc b/src/tint/lang/glsl/writer/ast_printer/bitcast_test.cc index 0a1de5e..f551cb7 100644 --- a/src/tint/lang/glsl/writer/ast_printer/bitcast_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/bitcast_test.cc
@@ -66,7 +66,7 @@ } TEST_F(GlslASTPrinterTest_Bitcast, EmitExpression_Bitcast_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Let("a", Call<vec2<f16>>(1_h, 2_h)); auto* b = Let("b", Bitcast<i32>(Expr("a"))); @@ -124,7 +124,7 @@ } TEST_F(GlslASTPrinterTest_Bitcast, EmitExpression_Bitcast_F16_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Let("a", Call<vec4<f16>>(1_h, 2_h, 3_h, 4_h)); auto* b = Let("b", Bitcast<vec2<i32>>(Expr("a")));
diff --git a/src/tint/lang/glsl/writer/ast_printer/builtin_test.cc b/src/tint/lang/glsl/writer/ast_printer/builtin_test.cc index 303e78f..2694b2c 100644 --- a/src/tint/lang/glsl/writer/ast_printer/builtin_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/builtin_test.cc
@@ -195,7 +195,7 @@ auto param = GetParam(); if (param.type == CallParamType::kF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("h2", ty.vec2<f16>(), core::AddressSpace::kPrivate); GlobalVar("h3", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -403,7 +403,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, FMA_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec3<f16>(), core::AddressSpace::kPrivate); GlobalVar("b", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -457,7 +457,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Runtime_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Expr(1.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -530,7 +530,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Runtime_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -595,7 +595,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Const_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", 1.5_h)))); @@ -652,7 +652,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Const_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))))); @@ -717,7 +717,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Runtime_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Expr(1_h)), // Var("v", Call("frexp", "f"))); @@ -790,7 +790,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Runtime_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Call<vec3<f16>>()), // Var("v", Call("frexp", "f"))); @@ -855,7 +855,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Const_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", 1_h)))); @@ -912,7 +912,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Const_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", Call<vec3<f16>>())))); @@ -1000,7 +1000,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Degrees_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("degrees", val); @@ -1032,7 +1032,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Degrees_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("degrees", val); @@ -1122,7 +1122,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Radians_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("radians", val); @@ -1154,7 +1154,7 @@ } TEST_F(GlslASTPrinterTest_Builtin, Radians_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("radians", val);
diff --git a/src/tint/lang/glsl/writer/ast_printer/constructor_test.cc b/src/tint/lang/glsl/writer/ast_printer/constructor_test.cc index c75cd8b..fe5faf4 100644 --- a/src/tint/lang/glsl/writer/ast_printer/constructor_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/constructor_test.cc
@@ -62,7 +62,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // Use a number close to 1<<16 but whose decimal representation ends in 0. WrapInFunction(Expr(f16((1 << 15) - 8))); @@ -83,7 +83,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<f16>(-1.2e-3_h)); @@ -130,7 +130,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Vec_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(1_h, 2_h, 3_h)); @@ -150,7 +150,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Vec_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>()); @@ -170,7 +170,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Literal) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(2_h)); @@ -193,7 +193,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Var) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("v", Expr(2_h)); auto* cast = Call<vec3<f16>>(var); @@ -244,7 +244,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Mat_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction( Call<mat2x3<f16>>(Call<vec3<f16>>(1_h, 2_h, 3_h), Call<vec3<f16>>(3_h, 4_h, 5_h))); @@ -289,7 +289,7 @@ // vec4<f16>(7.0h), // vec4<f16>(vec4<f16>(42.0h, 21.0h, 6.0h, -5.0h)), // ); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vector_literal = Call<vec4<f16>>(Expr(f16(2.0)), Expr(f16(3.0)), Expr(f16(4.0)), Expr(f16(8.0))); @@ -321,7 +321,7 @@ } TEST_F(GlslASTPrinterTest_Constructor, Type_Mat_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<mat2x3<f16>>()); @@ -355,7 +355,7 @@ // var m_2: mat4x4<f16> = mat4x4<f16>(m_1); // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* m_1 = Var("m_1", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>()); auto* m_2 = Var("m_2", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>(m_1));
diff --git a/src/tint/lang/glsl/writer/ast_printer/module_constant_test.cc b/src/tint/lang/glsl/writer/ast_printer/module_constant_test.cc index 32e8ace..2bf9e44 100644 --- a/src/tint/lang/glsl/writer/ast_printer/module_constant_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/module_constant_test.cc
@@ -131,7 +131,7 @@ } TEST_F(GlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Expr(1_h)); Func("f", tint::Empty, ty.void_(), @@ -210,7 +210,7 @@ } TEST_F(GlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), @@ -270,7 +270,7 @@ } TEST_F(GlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(),
diff --git a/src/tint/lang/glsl/writer/ast_printer/type_test.cc b/src/tint/lang/glsl/writer/ast_printer/type_test.cc index 01f0738..842149a 100644 --- a/src/tint/lang/glsl/writer/ast_printer/type_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/type_test.cc
@@ -109,7 +109,7 @@ } TEST_F(GlslASTPrinterTest_Type, EmitType_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* f16 = create<core::type::F16>(); @@ -146,7 +146,7 @@ } TEST_F(GlslASTPrinterTest_Type, EmitType_Matrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* f16 = create<core::type::F16>(); auto* vec3 = create<core::type::Vector>(f16, 3u); @@ -259,7 +259,7 @@ } TEST_F(GlslASTPrinterTest_Type, EmitType_Vector_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* f16 = create<core::type::F16>(); auto* vec3 = create<core::type::Vector>(f16, 3u);
diff --git a/src/tint/lang/glsl/writer/ast_printer/variable_decl_statement_test.cc b/src/tint/lang/glsl/writer/ast_printer/variable_decl_statement_test.cc index 84f2776..d61a679 100644 --- a/src/tint/lang/glsl/writer/ast_printer/variable_decl_statement_test.cc +++ b/src/tint/lang/glsl/writer/ast_printer/variable_decl_statement_test.cc
@@ -163,7 +163,7 @@ } TEST_F(GlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Expr(1_h)); Func("f", tint::Empty, ty.void_(), @@ -246,7 +246,7 @@ } TEST_F(GlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), @@ -309,7 +309,7 @@ } TEST_F(GlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(), @@ -479,7 +479,7 @@ } TEST_F(GlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Initializer_ZeroVec_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.vec3<f16>(), Call<vec3<f16>>()); @@ -508,7 +508,7 @@ } TEST_F(GlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Initializer_ZeroMat_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.mat2x3<f16>(), Call<mat2x3<f16>>());
diff --git a/src/tint/lang/glsl/writer/ast_raise/BUILD.bazel b/src/tint/lang/glsl/writer/ast_raise/BUILD.bazel index ad9c02e..a71fcf7 100644 --- a/src/tint/lang/glsl/writer/ast_raise/BUILD.bazel +++ b/src/tint/lang/glsl/writer/ast_raise/BUILD.bazel
@@ -43,6 +43,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -80,6 +81,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast/transform:test",
diff --git a/src/tint/lang/glsl/writer/ast_raise/BUILD.cmake b/src/tint/lang/glsl/writer/ast_raise/BUILD.cmake index 8f3c78a..eeaa334 100644 --- a/src/tint/lang/glsl/writer/ast_raise/BUILD.cmake +++ b/src/tint/lang/glsl/writer/ast_raise/BUILD.cmake
@@ -44,6 +44,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -84,6 +85,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_transform_test
diff --git a/src/tint/lang/glsl/writer/ast_raise/BUILD.gn b/src/tint/lang/glsl/writer/ast_raise/BUILD.gn index c0bc3b3..938e417 100644 --- a/src/tint/lang/glsl/writer/ast_raise/BUILD.gn +++ b/src/tint/lang/glsl/writer/ast_raise/BUILD.gn
@@ -46,6 +46,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -84,6 +85,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/ast/transform:unittests",
diff --git a/src/tint/lang/hlsl/writer/BUILD.bazel b/src/tint/lang/hlsl/writer/BUILD.bazel index 0c9ed78..323d038 100644 --- a/src/tint/lang/hlsl/writer/BUILD.bazel +++ b/src/tint/lang/hlsl/writer/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -81,6 +82,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/hlsl/writer/BUILD.cmake b/src/tint/lang/hlsl/writer/BUILD.cmake index df4dc70..887529b 100644 --- a/src/tint/lang/hlsl/writer/BUILD.cmake +++ b/src/tint/lang/hlsl/writer/BUILD.cmake
@@ -45,6 +45,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_hlsl_writer_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -91,6 +92,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_hlsl_writer_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/hlsl/writer/BUILD.gn b/src/tint/lang/hlsl/writer/BUILD.gn index 62cf889..b270131 100644 --- a/src/tint/lang/hlsl/writer/BUILD.gn +++ b/src/tint/lang/hlsl/writer/BUILD.gn
@@ -39,6 +39,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/hlsl/writer/ast_printer/BUILD.bazel b/src/tint/lang/hlsl/writer/ast_printer/BUILD.bazel index ad2940c..ecf285b 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/hlsl/writer/ast_printer/BUILD.bazel
@@ -38,6 +38,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/helpers", @@ -110,6 +111,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/hlsl/writer/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast:test",
diff --git a/src/tint/lang/hlsl/writer/ast_printer/BUILD.cmake b/src/tint/lang/hlsl/writer/ast_printer/BUILD.cmake index 5c13dec..47d9f98 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/hlsl/writer/ast_printer/BUILD.cmake
@@ -39,6 +39,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_hlsl_writer_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_helpers @@ -115,6 +116,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_hlsl_writer_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_test
diff --git a/src/tint/lang/hlsl/writer/ast_printer/BUILD.gn b/src/tint/lang/hlsl/writer/ast_printer/BUILD.gn index de41c15..017911b 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/hlsl/writer/ast_printer/BUILD.gn
@@ -41,6 +41,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/helpers", @@ -113,6 +114,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/hlsl/writer/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/ast/transform",
diff --git a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc index 1c077b1..352c4d8 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
@@ -337,14 +337,14 @@ if (!tint::writer::CheckSupportedExtensions( "HLSL", builder_.AST(), diagnostics_, Vector{ - core::Extension::kChromiumDisableUniformityAnalysis, - core::Extension::kChromiumExperimentalDp4A, - core::Extension::kChromiumExperimentalFullPtrParameters, - core::Extension::kChromiumExperimentalPushConstant, - core::Extension::kChromiumExperimentalReadWriteStorageTexture, - core::Extension::kChromiumExperimentalSubgroups, - core::Extension::kF16, - core::Extension::kChromiumInternalDualSourceBlending, + wgsl::Extension::kChromiumDisableUniformityAnalysis, + wgsl::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kChromiumExperimentalFullPtrParameters, + wgsl::Extension::kChromiumExperimentalPushConstant, + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture, + wgsl::Extension::kChromiumExperimentalSubgroups, + wgsl::Extension::kF16, + wgsl::Extension::kChromiumInternalDualSourceBlending, })) { return false; }
diff --git a/src/tint/lang/hlsl/writer/ast_printer/ast_printer_test.cc b/src/tint/lang/hlsl/writer/ast_printer/ast_printer_test.cc index c8670f2..cb81bf6 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/ast_printer_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/ast_printer_test.cc
@@ -32,7 +32,7 @@ } TEST_F(HlslASTPrinterTest, UnsupportedExtension) { - Enable(Source{{12, 34}}, core::Extension::kUndefined); + Enable(Source{{12, 34}}, wgsl::Extension::kUndefined); ASTPrinter& gen = Build();
diff --git a/src/tint/lang/hlsl/writer/ast_printer/binary_test.cc b/src/tint/lang/hlsl/writer/ast_printer/binary_test.cc index a796fbe..57494c2 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/binary_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/binary_test.cc
@@ -84,7 +84,7 @@ return; } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("left", ty.f16(), core::AddressSpace::kPrivate); GlobalVar("right", ty.f16(), core::AddressSpace::kPrivate); @@ -192,7 +192,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_VectorScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* lhs = Call<vec3<f16>>(1_h, 1_h, 1_h); auto* rhs = Expr(1_h); @@ -224,7 +224,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_ScalarVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* lhs = Expr(1_h); auto* rhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -256,7 +256,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_MatrixScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr("mat"); @@ -288,7 +288,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_ScalarMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr(1_h); @@ -320,7 +320,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_MatrixVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Expr("mat"); @@ -352,7 +352,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_VectorMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("mat", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* lhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -383,7 +383,7 @@ } TEST_F(HlslASTPrinterTest_Binary, Multiply_MatrixMatrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("lhs", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); GlobalVar("rhs", ty.mat3x3<f16>(), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/hlsl/writer/ast_printer/bitcast_test.cc b/src/tint/lang/hlsl/writer/ast_printer/bitcast_test.cc index 5cbc27b..cf79384 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/bitcast_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/bitcast_test.cc
@@ -62,7 +62,7 @@ } TEST_F(HlslASTPrinterTest_Bitcast, EmitExpression_Bitcast_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Let("a", Call<vec2<f16>>(1_h, 2_h)); auto* b = Let("b", Bitcast<i32>(Expr("a"))); @@ -128,7 +128,7 @@ } TEST_F(HlslASTPrinterTest_Bitcast, EmitExpression_Bitcast_F16_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Let("a", Call<vec4<f16>>(1_h, 2_h, 3_h, 4_h)); auto* b = Let("b", Bitcast<vec2<i32>>(Expr("a")));
diff --git a/src/tint/lang/hlsl/writer/ast_printer/builtin_test.cc b/src/tint/lang/hlsl/writer/ast_printer/builtin_test.cc index e673e5b..a7bbede 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/builtin_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/builtin_test.cc
@@ -194,7 +194,7 @@ auto param = GetParam(); if (param.type == CallParamType::kF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("h2", ty.vec2<f16>(), core::AddressSpace::kPrivate); GlobalVar("h3", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -402,7 +402,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Runtime_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Expr(1.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -456,7 +456,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Runtime_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -502,7 +502,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Const_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", 1.5_h)))); @@ -540,7 +540,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Const_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))))); @@ -613,7 +613,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Runtime_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Expr(1_h)), // Var("v", Call("frexp", "f"))); @@ -669,7 +669,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Runtime_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Call<vec3<f16>>()), // Var("v", Call("frexp", "f"))); @@ -716,7 +716,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Const_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", 1_h)))); @@ -754,7 +754,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Const_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", Call<vec3<f16>>())))); @@ -842,7 +842,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Degrees_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("degrees", val); @@ -865,7 +865,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Degrees_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("degrees", val); @@ -930,7 +930,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Radians_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("radians", val); @@ -953,7 +953,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Radians_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("radians", val); @@ -1044,7 +1044,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Sign_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("sign", val); @@ -1063,7 +1063,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Sign_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("sign", val); @@ -1124,7 +1124,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Trunc_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("trunc", val); @@ -1147,7 +1147,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Trunc_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("trunc", val); @@ -1436,7 +1436,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Dot4I8Packed) { - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); auto* val1 = Var("val1", ty.u32()); auto* val2 = Var("val2", ty.u32()); @@ -1462,7 +1462,7 @@ } TEST_F(HlslASTPrinterTest_Builtin, Dot4U8Packed) { - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); auto* val1 = Var("val1", ty.u32()); auto* val2 = Var("val2", ty.u32());
diff --git a/src/tint/lang/hlsl/writer/ast_printer/constructor_test.cc b/src/tint/lang/hlsl/writer/ast_printer/constructor_test.cc index c249b08..d4110e5 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/constructor_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/constructor_test.cc
@@ -62,7 +62,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // Use a number close to 1<<16 but whose decimal representation ends in 0. WrapInFunction(Expr(f16((1 << 15) - 8))); @@ -83,7 +83,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<f16>(-1.2e-3_h)); @@ -130,7 +130,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Vec_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(1_h, 2_h, 3_h)); @@ -152,7 +152,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Vec_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>()); @@ -172,7 +172,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Literal) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(2_h)); @@ -195,7 +195,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Var) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("v", Expr(2_h)); auto* cast = Call<vec3<f16>>(var); @@ -260,7 +260,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Mat_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction( Call<mat2x3<f16>>(Call<vec3<f16>>(1_h, 2_h, 3_h), Call<vec3<f16>>(3_h, 4_h, 5_h))); @@ -308,7 +308,7 @@ // vec4<f16>(7.0h), // vec4<f16>(vec4<f16>(42.0h, 21.0h, 6.0h, -5.0h)), // ); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vector_literal = Call<vec4<f16>>(f16(2.0), f16(3.0), f16(4.0), f16(8.0)); auto* vector_zero_init = Call<vec4<f16>>(); @@ -344,7 +344,7 @@ } TEST_F(HlslASTPrinterTest_Constructor, Type_Mat_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<mat2x3<f16>>()); @@ -380,7 +380,7 @@ // var m_2: mat4x4<f16> = mat4x4<f16>(m_1); // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* m_1 = Var("m_1", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>()); auto* m_2 = Var("m_2", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>(m_1));
diff --git a/src/tint/lang/hlsl/writer/ast_printer/member_accessor_test.cc b/src/tint/lang/hlsl/writer/ast_printer/member_accessor_test.cc index 81633c8..5c040c1 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/member_accessor_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/member_accessor_test.cc
@@ -166,7 +166,7 @@ auto p = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); SetupStorageBuffer(Vector{ Member("a", ty.i32()), @@ -301,7 +301,7 @@ auto p = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* inner = Structure("Inner", Vector{ Member("a", ty.i32()), @@ -440,7 +440,7 @@ auto p = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); SetupUniformBuffer(Vector{ Member("a", ty.i32()), @@ -708,7 +708,7 @@ auto p = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* inner = Structure("Inner", Vector{ Member("a", ty.i32()), @@ -990,7 +990,7 @@ auto p = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); SetupStorageBuffer(Vector{ Member("a", ty.i32()), @@ -1195,7 +1195,7 @@ // var<storage> data : Data; // data.a[2i][1i]; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); SetupStorageBuffer(Vector{ Member("z", ty.f16()), @@ -1261,7 +1261,7 @@ // var<uniform> data : Data; // data.a[2i][1i]; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); SetupUniformBuffer(Vector{ Member("z", ty.f16()),
diff --git a/src/tint/lang/hlsl/writer/ast_printer/module_constant_test.cc b/src/tint/lang/hlsl/writer/ast_printer/module_constant_test.cc index aa397b0..4916207 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/module_constant_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/module_constant_test.cc
@@ -94,7 +94,7 @@ } TEST_F(HlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Expr(1_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))}); @@ -152,7 +152,7 @@ } TEST_F(HlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))}); @@ -196,7 +196,7 @@ } TEST_F(HlslASTPrinterTest_ModuleConstant, Emit_GlobalConst_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))});
diff --git a/src/tint/lang/hlsl/writer/ast_printer/variable_decl_statement_test.cc b/src/tint/lang/hlsl/writer/ast_printer/variable_decl_statement_test.cc index 2da3410..41821f0 100644 --- a/src/tint/lang/hlsl/writer/ast_printer/variable_decl_statement_test.cc +++ b/src/tint/lang/hlsl/writer/ast_printer/variable_decl_statement_test.cc
@@ -156,7 +156,7 @@ } TEST_F(HlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Expr(1_h)); Func("f", tint::Empty, ty.void_(), @@ -230,7 +230,7 @@ } TEST_F(HlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), @@ -286,7 +286,7 @@ } TEST_F(HlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Const_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(), @@ -384,7 +384,7 @@ } TEST_F(HlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Initializer_ZeroVec_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.vec3<f16>(), Call<vec3<f16>>()); @@ -413,7 +413,7 @@ } TEST_F(HlslASTPrinterTest_VariableDecl, Emit_VariableDeclStatement_Initializer_ZeroMat_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.mat2x3<f16>(), Call<mat2x3<f16>>());
diff --git a/src/tint/lang/hlsl/writer/ast_raise/BUILD.bazel b/src/tint/lang/hlsl/writer/ast_raise/BUILD.bazel index 87be9ba2..f6333e6 100644 --- a/src/tint/lang/hlsl/writer/ast_raise/BUILD.bazel +++ b/src/tint/lang/hlsl/writer/ast_raise/BUILD.bazel
@@ -46,6 +46,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -84,6 +85,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast/transform:test",
diff --git a/src/tint/lang/hlsl/writer/ast_raise/BUILD.cmake b/src/tint/lang/hlsl/writer/ast_raise/BUILD.cmake index 6e3e1f0..d7b7107 100644 --- a/src/tint/lang/hlsl/writer/ast_raise/BUILD.cmake +++ b/src/tint/lang/hlsl/writer/ast_raise/BUILD.cmake
@@ -47,6 +47,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -88,6 +89,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_transform_test
diff --git a/src/tint/lang/hlsl/writer/ast_raise/BUILD.gn b/src/tint/lang/hlsl/writer/ast_raise/BUILD.gn index 89f2e4b..b7e2eef 100644 --- a/src/tint/lang/hlsl/writer/ast_raise/BUILD.gn +++ b/src/tint/lang/hlsl/writer/ast_raise/BUILD.gn
@@ -49,6 +49,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -88,6 +89,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/ast/transform:unittests",
diff --git a/src/tint/lang/msl/validate/BUILD.bazel b/src/tint/lang/msl/validate/BUILD.bazel index cd91a04..941ee92 100644 --- a/src/tint/lang/msl/validate/BUILD.bazel +++ b/src/tint/lang/msl/validate/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/msl/validate/BUILD.cmake b/src/tint/lang/msl/validate/BUILD.cmake index 9f3c0a5..e380067 100644 --- a/src/tint/lang/msl/validate/BUILD.cmake +++ b/src/tint/lang/msl/validate/BUILD.cmake
@@ -36,6 +36,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/msl/validate/BUILD.gn b/src/tint/lang/msl/validate/BUILD.gn index 6408a5f..c386530 100644 --- a/src/tint/lang/msl/validate/BUILD.gn +++ b/src/tint/lang/msl/validate/BUILD.gn
@@ -34,6 +34,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/msl/writer/BUILD.bazel b/src/tint/lang/msl/writer/BUILD.bazel index 1d5f3c4..b3e89ef 100644 --- a/src/tint/lang/msl/writer/BUILD.bazel +++ b/src/tint/lang/msl/writer/BUILD.bazel
@@ -41,6 +41,7 @@ "//src/tint/lang/core/ir", "//src/tint/lang/core/type", "//src/tint/lang/msl/writer/raise", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader/program_to_ir", @@ -82,6 +83,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/msl/writer/BUILD.cmake b/src/tint/lang/msl/writer/BUILD.cmake index b8bbc1d..15752d1 100644 --- a/src/tint/lang/msl/writer/BUILD.cmake +++ b/src/tint/lang/msl/writer/BUILD.cmake
@@ -48,6 +48,7 @@ tint_lang_core_ir tint_lang_core_type tint_lang_msl_writer_raise + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader_program_to_ir @@ -94,6 +95,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/msl/writer/BUILD.gn b/src/tint/lang/msl/writer/BUILD.gn index 695bc61..560486c 100644 --- a/src/tint/lang/msl/writer/BUILD.gn +++ b/src/tint/lang/msl/writer/BUILD.gn
@@ -40,6 +40,7 @@ "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/msl/writer/raise", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/reader/program_to_ir",
diff --git a/src/tint/lang/msl/writer/ast_printer/BUILD.bazel b/src/tint/lang/msl/writer/ast_printer/BUILD.bazel index b061b09..4e43481 100644 --- a/src/tint/lang/msl/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/msl/writer/ast_printer/BUILD.bazel
@@ -37,6 +37,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/helpers", @@ -107,6 +108,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast:test", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/msl/writer/ast_printer/BUILD.cmake b/src/tint/lang/msl/writer/ast_printer/BUILD.cmake index 4db100e..40a6b6d 100644 --- a/src/tint/lang/msl/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/msl/writer/ast_printer/BUILD.cmake
@@ -38,6 +38,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_helpers @@ -112,6 +113,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_test tint_lang_wgsl_program
diff --git a/src/tint/lang/msl/writer/ast_printer/BUILD.gn b/src/tint/lang/msl/writer/ast_printer/BUILD.gn index 6622f41..072b550 100644 --- a/src/tint/lang/msl/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/msl/writer/ast_printer/BUILD.gn
@@ -40,6 +40,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/helpers", @@ -112,6 +113,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/msl/writer/ast_printer/ast_printer.cc b/src/tint/lang/msl/writer/ast_printer/ast_printer.cc index 22fd118..8dced2c 100644 --- a/src/tint/lang/msl/writer/ast_printer/ast_printer.cc +++ b/src/tint/lang/msl/writer/ast_printer/ast_printer.cc
@@ -257,16 +257,16 @@ if (!tint::writer::CheckSupportedExtensions( "MSL", builder_.AST(), diagnostics_, Vector{ - core::Extension::kChromiumDisableUniformityAnalysis, - core::Extension::kChromiumExperimentalDp4A, - core::Extension::kChromiumExperimentalFullPtrParameters, - core::Extension::kChromiumExperimentalPixelLocal, - core::Extension::kChromiumExperimentalPushConstant, - core::Extension::kChromiumExperimentalReadWriteStorageTexture, - core::Extension::kChromiumExperimentalSubgroups, - core::Extension::kChromiumInternalDualSourceBlending, - core::Extension::kChromiumInternalRelaxedUniformLayout, - core::Extension::kF16, + wgsl::Extension::kChromiumDisableUniformityAnalysis, + wgsl::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kChromiumExperimentalFullPtrParameters, + wgsl::Extension::kChromiumExperimentalPixelLocal, + wgsl::Extension::kChromiumExperimentalPushConstant, + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture, + wgsl::Extension::kChromiumExperimentalSubgroups, + wgsl::Extension::kChromiumInternalDualSourceBlending, + wgsl::Extension::kChromiumInternalRelaxedUniformLayout, + wgsl::Extension::kF16, })) { return false; }
diff --git a/src/tint/lang/msl/writer/ast_printer/ast_printer_test.cc b/src/tint/lang/msl/writer/ast_printer/ast_printer_test.cc index 7e21d8a..a6d092f 100644 --- a/src/tint/lang/msl/writer/ast_printer/ast_printer_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/ast_printer_test.cc
@@ -36,7 +36,7 @@ } TEST_F(MslASTPrinterTest, UnsupportedExtension) { - Enable(Source{{12, 34}}, core::Extension::kUndefined); + Enable(Source{{12, 34}}, wgsl::Extension::kUndefined); ASTPrinter& gen = Build();
diff --git a/src/tint/lang/msl/writer/ast_printer/binary_test.cc b/src/tint/lang/msl/writer/ast_printer/binary_test.cc index c0c741a..52ac50d 100644 --- a/src/tint/lang/msl/writer/ast_printer/binary_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/binary_test.cc
@@ -161,7 +161,7 @@ } TEST_F(MslBinaryTest, ModF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* left = Var("left", ty.f16()); auto* right = Var("right", ty.f16()); @@ -189,7 +189,7 @@ } TEST_F(MslBinaryTest, ModVec3F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* left = Var("left", ty.vec3<f16>()); auto* right = Var("right", ty.vec3<f16>());
diff --git a/src/tint/lang/msl/writer/ast_printer/builtin_test.cc b/src/tint/lang/msl/writer/ast_printer/builtin_test.cc index 67caae0..f596fd5 100644 --- a/src/tint/lang/msl/writer/ast_printer/builtin_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/builtin_test.cc
@@ -214,7 +214,7 @@ auto param = GetParam(); if (param.type == CallParamType::kF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("h2", ty.vec2<f16>(), core::AddressSpace::kPrivate); GlobalVar("h3", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -438,7 +438,7 @@ } TEST_F(MslASTPrinterTest, Runtime_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Expr(1.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -500,7 +500,7 @@ } TEST_F(MslASTPrinterTest, Runtime_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("f", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))), // Decl(Let("v", Call("modf", "f")))); @@ -554,7 +554,7 @@ } TEST_F(MslASTPrinterTest, Const_Modf_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", 1.5_h)))); @@ -600,7 +600,7 @@ } TEST_F(MslASTPrinterTest, Const_Modf_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("modf", Call<vec3<f16>>(1.5_h, 2.5_h, 3.5_h))))); @@ -654,7 +654,7 @@ } TEST_F(MslASTPrinterTest, Runtime_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Expr(1_h)), // Var("v", Call("frexp", "f"))); @@ -716,7 +716,7 @@ } TEST_F(MslASTPrinterTest, Runtime_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Var("f", Call<vec3<f16>>()), // Var("v", Call("frexp", "f"))); @@ -770,7 +770,7 @@ } TEST_F(MslASTPrinterTest, Const_Frexp_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", 1_h)))); @@ -816,7 +816,7 @@ } TEST_F(MslASTPrinterTest, Const_Frexp_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Let("v", Call("frexp", Call<vec3<f16>>())))); @@ -890,7 +890,7 @@ } TEST_F(MslASTPrinterTest, Degrees_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("degrees", val); @@ -917,7 +917,7 @@ } TEST_F(MslASTPrinterTest, Degrees_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("degrees", val); @@ -994,7 +994,7 @@ } TEST_F(MslASTPrinterTest, Radians_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.f16()); auto* call = Call("radians", val); @@ -1021,7 +1021,7 @@ } TEST_F(MslASTPrinterTest, Radians_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* val = Var("val", ty.vec3<f16>()); auto* call = Call("radians", val);
diff --git a/src/tint/lang/msl/writer/ast_printer/constructor_test.cc b/src/tint/lang/msl/writer/ast_printer/constructor_test.cc index 214a147..67fe95f 100644 --- a/src/tint/lang/msl/writer/ast_printer/constructor_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/constructor_test.cc
@@ -62,7 +62,7 @@ } TEST_F(MslASTPrinterTest_Constructor, F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // Use a number close to 1<<16 but whose decimal representation ends in 0. WrapInFunction(Expr(f16((1 << 15) - 8))); @@ -83,7 +83,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<f16>(-1.2e-3_h)); @@ -130,7 +130,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Vec_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(1_h, 2_h, 3_h)); @@ -150,7 +150,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Vec_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>()); @@ -170,7 +170,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Literal) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(2_h)); @@ -193,7 +193,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Vec_SingleScalar_F16_Var) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("v", Expr(2_h)); auto* cast = Call<vec3<f16>>(var); @@ -246,7 +246,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Mat_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction( Call<mat2x3<f16>>(Call<vec3<f16>>(1_h, 2_h, 3_h), Call<vec3<f16>>(3_h, 4_h, 5_h))); @@ -292,7 +292,7 @@ // vec4<f16>(7.0h), // vec4<f16>(vec4<f16>(42.0h, 21.0h, 6.0h, -5.0h)), // ); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vector_literal = Call<vec4<f16>>(f16(2.0), f16(3.0), f16(4.0), f16(8.0)); auto* vector_zero_init = Call<vec4<f16>>(); @@ -325,7 +325,7 @@ } TEST_F(MslASTPrinterTest_Constructor, Type_Mat_Empty_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<mat2x3<f16>>()); @@ -361,7 +361,7 @@ // var m_2: mat4x4<f16> = mat4x4<f16>(m_1); // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* m_1 = Var("m_1", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>()); auto* m_2 = Var("m_2", ty.mat4x4(ty.f16()), Call<mat4x4<f16>>(m_1));
diff --git a/src/tint/lang/msl/writer/ast_printer/module_constant_test.cc b/src/tint/lang/msl/writer/ast_printer/module_constant_test.cc index cef8f57..73e8563 100644 --- a/src/tint/lang/msl/writer/ast_printer/module_constant_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/module_constant_test.cc
@@ -114,7 +114,7 @@ } TEST_F(MslASTPrinterTest, Emit_GlobalConst_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Expr(1_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))}); @@ -188,7 +188,7 @@ } TEST_F(MslASTPrinterTest, Emit_GlobalConst_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))}); @@ -244,7 +244,7 @@ } TEST_F(MslASTPrinterTest, Emit_GlobalConst_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalConst("G", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(Let("l", Expr(var)))});
diff --git a/src/tint/lang/msl/writer/ast_printer/variable_decl_statement_test.cc b/src/tint/lang/msl/writer/ast_printer/variable_decl_statement_test.cc index 7024032..4925919 100644 --- a/src/tint/lang/msl/writer/ast_printer/variable_decl_statement_test.cc +++ b/src/tint/lang/msl/writer/ast_printer/variable_decl_statement_test.cc
@@ -155,7 +155,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Const_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Expr(1_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(C), Decl(Let("l", Expr(C)))}); @@ -229,7 +229,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Const_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(C), Decl(Let("l", Expr(C)))}); @@ -285,7 +285,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Const_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(), Vector{Decl(C), Decl(Let("l", Expr(C)))}); @@ -415,7 +415,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.vec2<f16>()); auto* stmt = Decl(var); @@ -444,7 +444,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Matrix_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.mat3x2<f16>()); @@ -473,7 +473,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Initializer_ZeroVec_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.vec3<f16>(), Call<vec3<f16>>()); @@ -502,7 +502,7 @@ } TEST_F(MslASTPrinterTest, Emit_VariableDeclStatement_Initializer_ZeroMat_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("a", ty.mat2x3<f16>(), Call<mat2x3<f16>>());
diff --git a/src/tint/lang/msl/writer/ast_raise/BUILD.bazel b/src/tint/lang/msl/writer/ast_raise/BUILD.bazel index 0b080b5..e2b25c8 100644 --- a/src/tint/lang/msl/writer/ast_raise/BUILD.bazel +++ b/src/tint/lang/msl/writer/ast_raise/BUILD.bazel
@@ -42,6 +42,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -78,6 +79,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast/transform:test",
diff --git a/src/tint/lang/msl/writer/ast_raise/BUILD.cmake b/src/tint/lang/msl/writer/ast_raise/BUILD.cmake index 56fe8bd..54b8337 100644 --- a/src/tint/lang/msl/writer/ast_raise/BUILD.cmake +++ b/src/tint/lang/msl/writer/ast_raise/BUILD.cmake
@@ -43,6 +43,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -82,6 +83,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_transform_test
diff --git a/src/tint/lang/msl/writer/ast_raise/BUILD.gn b/src/tint/lang/msl/writer/ast_raise/BUILD.gn index f6890c2..bb16eaa 100644 --- a/src/tint/lang/msl/writer/ast_raise/BUILD.gn +++ b/src/tint/lang/msl/writer/ast_raise/BUILD.gn
@@ -45,6 +45,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -82,6 +83,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/ast/transform:unittests",
diff --git a/src/tint/lang/msl/writer/ast_raise/module_scope_var_to_entry_point_param.cc b/src/tint/lang/msl/writer/ast_raise/module_scope_var_to_entry_point_param.cc index 4e529a2..ef07aa9 100644 --- a/src/tint/lang/msl/writer/ast_raise/module_scope_var_to_entry_point_param.cc +++ b/src/tint/lang/msl/writer/ast_raise/module_scope_var_to_entry_point_param.cc
@@ -364,7 +364,7 @@ ctx.dst->Structure(PrivateStructName(), std::move(private_struct_members)); // Passing a pointer to a private variable will now involve passing a pointer to the // member of a structure, so enable the extension that allows this. - ctx.dst->Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + ctx.dst->Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); } // Build a list of `&ident` expressions. We'll use this later to avoid generating
diff --git a/src/tint/lang/msl/writer/ast_raise/packed_vec3.cc b/src/tint/lang/msl/writer/ast_raise/packed_vec3.cc index cfe3c0e..d24d83f 100644 --- a/src/tint/lang/msl/writer/ast_raise/packed_vec3.cc +++ b/src/tint/lang/msl/writer/ast_raise/packed_vec3.cc
@@ -366,7 +366,7 @@ // bytes from the start of a structure to the start of the next member. // Disable these validation rules using an internal extension, as MSL does not have these // restrictions. - b.Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + b.Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); // Track expressions that need to be packed or unpacked. Hashset<const sem::ValueExpression*, 8> to_pack;
diff --git a/src/tint/lang/msl/writer/ast_raise/pixel_local.cc b/src/tint/lang/msl/writer/ast_raise/pixel_local.cc index 53f6dfe..df67318 100644 --- a/src/tint/lang/msl/writer/ast_raise/pixel_local.cc +++ b/src/tint/lang/msl/writer/ast_raise/pixel_local.cc
@@ -58,7 +58,7 @@ // If the pixel local extension isn't enabled, then there must be no use of pixel_local // variables, and so there's nothing for this transform to do. if (!sem.Module()->Extensions().Contains( - core::Extension::kChromiumExperimentalPixelLocal)) { + wgsl::Extension::kChromiumExperimentalPixelLocal)) { return SkipTransform; }
diff --git a/src/tint/lang/spirv/reader/BUILD.bazel b/src/tint/lang/spirv/reader/BUILD.bazel index 0c153ea..3601ba5 100644 --- a/src/tint/lang/spirv/reader/BUILD.bazel +++ b/src/tint/lang/spirv/reader/BUILD.bazel
@@ -36,6 +36,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/reader/BUILD.cmake b/src/tint/lang/spirv/reader/BUILD.cmake index 282235d..6dd4628 100644 --- a/src/tint/lang/spirv/reader/BUILD.cmake +++ b/src/tint/lang/spirv/reader/BUILD.cmake
@@ -41,6 +41,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/spirv/reader/BUILD.gn b/src/tint/lang/spirv/reader/BUILD.gn index eeb5258..80f55cb 100644 --- a/src/tint/lang/spirv/reader/BUILD.gn +++ b/src/tint/lang/spirv/reader/BUILD.gn
@@ -35,6 +35,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/reader/ast_lower/BUILD.bazel b/src/tint/lang/spirv/reader/ast_lower/BUILD.bazel index 5f0918e..0a5204d1 100644 --- a/src/tint/lang/spirv/reader/ast_lower/BUILD.bazel +++ b/src/tint/lang/spirv/reader/ast_lower/BUILD.bazel
@@ -42,6 +42,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -78,6 +79,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast/transform:test",
diff --git a/src/tint/lang/spirv/reader/ast_lower/BUILD.cmake b/src/tint/lang/spirv/reader/ast_lower/BUILD.cmake index 29a4202..034a369 100644 --- a/src/tint/lang/spirv/reader/ast_lower/BUILD.cmake +++ b/src/tint/lang/spirv/reader/ast_lower/BUILD.cmake
@@ -43,6 +43,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -82,6 +83,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_transform_test
diff --git a/src/tint/lang/spirv/reader/ast_lower/BUILD.gn b/src/tint/lang/spirv/reader/ast_lower/BUILD.gn index 730ff27..fee420d 100644 --- a/src/tint/lang/spirv/reader/ast_lower/BUILD.gn +++ b/src/tint/lang/spirv/reader/ast_lower/BUILD.gn
@@ -45,6 +45,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -82,6 +83,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/ast/transform:unittests",
diff --git a/src/tint/lang/spirv/reader/ast_parser/BUILD.bazel b/src/tint/lang/spirv/reader/ast_parser/BUILD.bazel index ff65b46..4a97ba1 100644 --- a/src/tint/lang/spirv/reader/ast_parser/BUILD.bazel +++ b/src/tint/lang/spirv/reader/ast_parser/BUILD.bazel
@@ -55,6 +55,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -133,6 +134,7 @@ "//src/tint/lang/core/constant", "//src/tint/lang/core/type", "//src/tint/lang/spirv/reader/common", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/reader/ast_parser/BUILD.cmake b/src/tint/lang/spirv/reader/ast_parser/BUILD.cmake index 2748739..c8b5c9d 100644 --- a/src/tint/lang/spirv/reader/ast_parser/BUILD.cmake +++ b/src/tint/lang/spirv/reader/ast_parser/BUILD.cmake
@@ -56,6 +56,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -139,6 +140,7 @@ tint_lang_core_constant tint_lang_core_type tint_lang_spirv_reader_common + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/spirv/reader/ast_parser/BUILD.gn b/src/tint/lang/spirv/reader/ast_parser/BUILD.gn index 5c3d82b..163e8be 100644 --- a/src/tint/lang/spirv/reader/ast_parser/BUILD.gn +++ b/src/tint/lang/spirv/reader/ast_parser/BUILD.gn
@@ -58,6 +58,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -139,6 +140,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/reader/common", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/reader/ast_parser/ast_parser.cc b/src/tint/lang/spirv/reader/ast_parser/ast_parser.cc index ae45f74..eea7fce 100644 --- a/src/tint/lang/spirv/reader/ast_parser/ast_parser.cc +++ b/src/tint/lang/spirv/reader/ast_parser/ast_parser.cc
@@ -2574,7 +2574,7 @@ const auto access = usage.IsStorageReadWriteTexture() ? core::Access::kReadWrite : core::Access::kWrite; if (access == core::Access::kReadWrite) { - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); } const auto format = enum_converter_.ToTexelFormat(image_type->format()); if (format == core::TexelFormat::kUndefined) {
diff --git a/src/tint/lang/spirv/reader/ast_parser/ast_parser.h b/src/tint/lang/spirv/reader/ast_parser/ast_parser.h index bf5df6b..69aa099 100644 --- a/src/tint/lang/spirv/reader/ast_parser/ast_parser.h +++ b/src/tint/lang/spirv/reader/ast_parser/ast_parser.h
@@ -740,7 +740,7 @@ /// Enable a WGSL extension, if not already enabled. /// @param extension the extension to enable - void Enable(core::Extension extension) { + void Enable(wgsl::Extension extension) { if (enabled_extensions_.Add(extension)) { builder_.Enable(extension); } @@ -935,7 +935,7 @@ WorkgroupSizeInfo workgroup_size_builtin_; /// Set of WGSL extensions that have been enabled. - Hashset<core::Extension, 4> enabled_extensions_; + Hashset<wgsl::Extension, 4> enabled_extensions_; }; } // namespace tint::spirv::reader::ast_parser
diff --git a/src/tint/lang/spirv/reader/ast_parser/function.cc b/src/tint/lang/spirv/reader/ast_parser/function.cc index e83e959..754fff5 100644 --- a/src/tint/lang/spirv/reader/ast_parser/function.cc +++ b/src/tint/lang/spirv/reader/ast_parser/function.cc
@@ -5312,7 +5312,7 @@ if (memory != uint32_t(spv::Scope::Workgroup)) { return Fail() << "textureBarrier requires workgroup memory scope"; } - parser_impl_.Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + parser_impl_.Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); AddStatement(builder_.CallStmt(builder_.Call("textureBarrier"))); semantics &= ~static_cast<uint32_t>(spv::MemorySemanticsMask::ImageMemory); }
diff --git a/src/tint/lang/spirv/reader/ast_parser/parse.cc b/src/tint/lang/spirv/reader/ast_parser/parse.cc index a0bee33..abef728 100644 --- a/src/tint/lang/spirv/reader/ast_parser/parse.cc +++ b/src/tint/lang/spirv/reader/ast_parser/parse.cc
@@ -44,7 +44,7 @@ if (options.allow_non_uniform_derivatives) { // Suppress errors regarding non-uniform derivative operations if requested, by adding a // diagnostic directive to the module. - builder.DiagnosticDirective(core::DiagnosticSeverity::kOff, "derivative_uniformity"); + builder.DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, "derivative_uniformity"); } if (!options.allow_chromium_extensions) { @@ -52,23 +52,23 @@ for (auto* enable : builder.AST().Enables()) { for (auto* extension : enable->extensions) { switch (extension->name) { - case core::Extension::kUndefined: - case core::Extension::kChromiumDisableUniformityAnalysis: - case core::Extension::kChromiumExperimentalDp4A: - case core::Extension::kChromiumExperimentalFullPtrParameters: - case core::Extension::kChromiumExperimentalPixelLocal: - case core::Extension::kChromiumExperimentalPushConstant: - case core::Extension::kChromiumExperimentalReadWriteStorageTexture: - case core::Extension::kChromiumExperimentalSubgroups: - case core::Extension::kChromiumInternalDualSourceBlending: - case core::Extension::kChromiumInternalRelaxedUniformLayout: { + case wgsl::Extension::kUndefined: + case wgsl::Extension::kChromiumDisableUniformityAnalysis: + case wgsl::Extension::kChromiumExperimentalDp4A: + case wgsl::Extension::kChromiumExperimentalFullPtrParameters: + case wgsl::Extension::kChromiumExperimentalPixelLocal: + case wgsl::Extension::kChromiumExperimentalPushConstant: + case wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture: + case wgsl::Extension::kChromiumExperimentalSubgroups: + case wgsl::Extension::kChromiumInternalDualSourceBlending: + case wgsl::Extension::kChromiumInternalRelaxedUniformLayout: { StringStream ss; ss << "module requires " << ToString(extension->name) << ", but 'allow-chromium-extensions' was not passed"; builder.Diagnostics().add_error(diag::System::Reader, ss.str()); return Program(std::move(builder)); } - case core::Extension::kF16: + case wgsl::Extension::kF16: break; } }
diff --git a/src/tint/lang/spirv/writer/BUILD.bazel b/src/tint/lang/spirv/writer/BUILD.bazel index f4c8091..e42bedf6 100644 --- a/src/tint/lang/spirv/writer/BUILD.bazel +++ b/src/tint/lang/spirv/writer/BUILD.bazel
@@ -44,6 +44,7 @@ "//src/tint/lang/core/type", "//src/tint/lang/spirv/intrinsic/data", "//src/tint/lang/spirv/ir", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader/program_to_ir", @@ -158,6 +159,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/writer/BUILD.cmake b/src/tint/lang/spirv/writer/BUILD.cmake index 239c5b5..b47843a 100644 --- a/src/tint/lang/spirv/writer/BUILD.cmake +++ b/src/tint/lang/spirv/writer/BUILD.cmake
@@ -51,6 +51,7 @@ tint_lang_core_type tint_lang_spirv_intrinsic_data tint_lang_spirv_ir + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader_program_to_ir @@ -179,6 +180,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/spirv/writer/BUILD.gn b/src/tint/lang/spirv/writer/BUILD.gn index 0d7c728..a3dd0b8 100644 --- a/src/tint/lang/spirv/writer/BUILD.gn +++ b/src/tint/lang/spirv/writer/BUILD.gn
@@ -47,6 +47,7 @@ "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/spirv/intrinsic/data", "${tint_src_dir}/lang/spirv/ir", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/reader/program_to_ir",
diff --git a/src/tint/lang/spirv/writer/ast_printer/BUILD.bazel b/src/tint/lang/spirv/writer/ast_printer/BUILD.bazel index b695ddb..99c7cd5 100644 --- a/src/tint/lang/spirv/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/spirv/writer/ast_printer/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/helpers", @@ -112,6 +113,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast:test", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/spirv/writer/ast_printer/BUILD.cmake b/src/tint/lang/spirv/writer/ast_printer/BUILD.cmake index 0a81588..46151c0 100644 --- a/src/tint/lang/spirv/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/spirv/writer/ast_printer/BUILD.cmake
@@ -41,6 +41,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_helpers @@ -118,6 +119,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_test tint_lang_wgsl_program
diff --git a/src/tint/lang/spirv/writer/ast_printer/BUILD.gn b/src/tint/lang/spirv/writer/ast_printer/BUILD.gn index 94377d4..4344f94 100644 --- a/src/tint/lang/spirv/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/spirv/writer/ast_printer/BUILD.gn
@@ -43,6 +43,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/helpers", @@ -116,6 +117,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/spirv/writer/ast_printer/ast_builtin_test.cc b/src/tint/lang/spirv/writer/ast_printer/ast_builtin_test.cc index fc2feba..b0c7a8d0 100644 --- a/src/tint/lang/spirv/writer/ast_printer/ast_builtin_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/ast_builtin_test.cc
@@ -135,7 +135,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_GLSLMethod_WithLoad_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("ident", ty.f16(), core::AddressSpace::kPrivate); auto* expr = Call("round", "ident"); @@ -520,7 +520,7 @@ } TEST_P(Builtin_Builder_SingleParam_Float_Test, Call_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); // Use a variable to prevent the function being evaluated as constant. @@ -603,7 +603,7 @@ } TEST_P(Builtin_Builder_SingleParam_Float_Test, Call_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); @@ -709,7 +709,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Length_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* scalar = Var("a", Expr(1_h)); auto* expr = Call("length", scalar); @@ -783,7 +783,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Length_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("a", Call<vec2<f16>>(1_h, 1_h)); auto* expr = Call("length", vec); @@ -859,7 +859,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Normalize_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("a", Call<vec2<f16>>(1_h, 1_h)); auto* expr = Call("normalize", vec); @@ -938,7 +938,7 @@ } TEST_P(Builtin_Builder_DualParam_Float_Test, Call_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); auto* scalar = Var("scalar", Expr(1_h)); @@ -1020,7 +1020,7 @@ } TEST_P(Builtin_Builder_DualParam_Float_Test, Call_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 1_h)); @@ -1109,7 +1109,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Reflect_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 1_h)); auto* expr = Call("reflect", vec, vec); @@ -1185,7 +1185,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Distance_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* scalar = Var("scalar", Expr(1_h)); auto* expr = Call("distance", scalar, scalar); @@ -1261,7 +1261,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Distance_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 1_h)); auto* expr = Call("distance", vec, vec); @@ -1339,7 +1339,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Cross_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec3<f16>>(1_h, 1_h, 1_h)); auto* expr = Call("cross", vec, vec); @@ -1420,7 +1420,7 @@ } TEST_P(Builtin_Builder_ThreeParam_Float_Test, Call_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); auto* scalar = Var("scalar", Expr(1_h)); @@ -1504,7 +1504,7 @@ } TEST_P(Builtin_Builder_ThreeParam_Float_Test, Call_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 1_h)); @@ -1595,7 +1595,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_FaceForward_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 1_h)); auto* expr = Call("faceForward", vec, vec, vec); @@ -1688,7 +1688,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Runtime_Call_Modf_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 2_h)); auto* expr = Call("modf", vec); @@ -1790,7 +1790,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Const_Call_Modf_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call("modf", Call<vec2<f16>>(1_h, 2_h)); Func("a_func", tint::Empty, ty.void_(), @@ -1894,7 +1894,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Runtime_Call_Frexp_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec = Var("vec", Call<vec2<f16>>(1_h, 2_h)); auto* expr = Call("frexp", vec); @@ -2000,7 +2000,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Const_Call_Frexp_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Func("a_func", tint::Empty, ty.void_(), Vector{ @@ -3155,7 +3155,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Determinant_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("var", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); auto* expr = Call("determinant", "var"); @@ -3228,7 +3228,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Transpose_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("var", ty.mat2x3<f16>(), core::AddressSpace::kPrivate); auto* expr = Call("transpose", "var"); @@ -3300,7 +3300,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Dot_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("v", ty.vec3<f16>(), core::AddressSpace::kPrivate); auto* expr = Call("dot", "v", "v"); @@ -4159,7 +4159,7 @@ namespace DP4A_builtin_tests { TEST_F(BuiltinSpirvASTPrinterTest, Call_Dot4I8Packed) { - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); auto* val1 = Var("val1", ty.u32()); auto* val2 = Var("val2", ty.u32()); @@ -4196,7 +4196,7 @@ } TEST_F(BuiltinSpirvASTPrinterTest, Call_Dot4U8Packed) { - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); auto* val1 = Var("val1", ty.u32()); auto* val2 = Var("val2", ty.u32());
diff --git a/src/tint/lang/spirv/writer/ast_printer/ast_printer_test.cc b/src/tint/lang/spirv/writer/ast_printer/ast_printer_test.cc index 8fabbf2..bcf0633 100644 --- a/src/tint/lang/spirv/writer/ast_printer/ast_printer_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/ast_printer_test.cc
@@ -31,7 +31,7 @@ } TEST_F(SpirvASTPrinterTest, UnsupportedExtension) { - Enable(Source{{12, 34}}, core::Extension::kUndefined); + Enable(Source{{12, 34}}, wgsl::Extension::kUndefined); auto program = std::make_unique<Program>(resolver::Resolve(*this)); auto result = Generate(program.get(), Options{});
diff --git a/src/tint/lang/spirv/writer/ast_printer/ast_type_test.cc b/src/tint/lang/spirv/writer/ast_printer/ast_type_test.cc index a1b3ce6..d927699 100644 --- a/src/tint/lang/spirv/writer/ast_printer/ast_type_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/ast_type_test.cc
@@ -324,7 +324,7 @@ } TEST_F(SpirvASTPrinterTest_Type, GenerateStruct) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("my_struct", Vector{Member("a", ty.f32()), Member("b", ty.f16())}); @@ -345,7 +345,7 @@ } TEST_F(SpirvASTPrinterTest_Type, GenerateStruct_DecoratedMembers) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a", ty.f32()), @@ -378,7 +378,7 @@ } TEST_F(SpirvASTPrinterTest_Type, GenerateStruct_DecoratedMembers_Matrix) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("mat2x2_f32", ty.mat2x2<f32>()), @@ -441,7 +441,7 @@ } TEST_F(SpirvASTPrinterTest_Type, GenerateStruct_DecoratedMembers_ArraysOfMatrix) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto arr_mat2x2_f32 = ty.array(ty.mat2x2<f32>(), 1_u); // Singly nested array auto arr_mat2x2_f16 = ty.array(ty.mat2x2<f16>(), 1_u); // Singly nested array
diff --git a/src/tint/lang/spirv/writer/ast_printer/binary_expression_test.cc b/src/tint/lang/spirv/writer/ast_printer/binary_expression_test.cc index b5c9bcb..47f27be 100644 --- a/src/tint/lang/spirv/writer/ast_printer/binary_expression_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/binary_expression_test.cc
@@ -251,7 +251,7 @@ using BinaryArithF16Test = TestParamHelper<BinaryData>; TEST_P(BinaryArithF16Test, Scalar) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); @@ -276,7 +276,7 @@ } TEST_P(BinaryArithF16Test, Vector) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); @@ -546,7 +546,7 @@ using BinaryCompareF16Test = TestParamHelper<BinaryData>; TEST_P(BinaryCompareF16Test, Scalar) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); @@ -572,7 +572,7 @@ } TEST_P(BinaryCompareF16Test, Vector) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto param = GetParam(); @@ -632,7 +632,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_VectorScalar_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* lhs = Call<vec3<f16>>(1_h, 1_h, 1_h); auto* rhs = Expr(1_h); @@ -680,7 +680,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_ScalarVector_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* lhs = Expr(1_h); auto* rhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -731,7 +731,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_MatrixScalar_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("mat", ty.mat3x3<f16>()); auto* expr = create<ast::BinaryExpression>(core::BinaryOp::kMultiply, Expr("mat"), Expr(1_h)); @@ -785,7 +785,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_ScalarMatrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("mat", ty.mat3x3<f16>()); auto* expr = create<ast::BinaryExpression>(core::BinaryOp::kMultiply, Expr(1_h), Expr("mat")); @@ -841,7 +841,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_MatrixVector_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("mat", ty.mat3x3<f16>()); auto* rhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -899,7 +899,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_VectorMatrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("mat", ty.mat3x3<f16>()); auto* lhs = Call<vec3<f16>>(1_h, 1_h, 1_h); @@ -956,7 +956,7 @@ } TEST_F(SpirvASTPrinterTest, Binary_Multiply_MatrixMatrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Var("mat", ty.mat3x3<f16>()); auto* expr = create<ast::BinaryExpression>(core::BinaryOp::kMultiply, Expr("mat"), Expr("mat")); @@ -1348,7 +1348,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeVectorExpr(this, param.type); @@ -1400,7 +1400,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeScalarExpr(this, param.type); @@ -1480,7 +1480,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeVectorExpr(this, param.type); @@ -1528,7 +1528,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeScalarExpr(this, param.type); @@ -1643,7 +1643,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeMat3x4Expr(this, param.type); @@ -1706,7 +1706,7 @@ auto& param = GetParam(); if (param.type == Type::f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } const ast::Expression* lhs = MakeMat3x4Expr(this, param.type);
diff --git a/src/tint/lang/spirv/writer/ast_printer/builder.cc b/src/tint/lang/spirv/writer/ast_printer/builder.cc index 65a13af..27fe8b4 100644 --- a/src/tint/lang/spirv/writer/ast_printer/builder.cc +++ b/src/tint/lang/spirv/writer/ast_printer/builder.cc
@@ -263,14 +263,14 @@ if (!tint::writer::CheckSupportedExtensions( "SPIR-V", builder_.AST(), builder_.Diagnostics(), Vector{ - core::Extension::kChromiumDisableUniformityAnalysis, - core::Extension::kChromiumExperimentalDp4A, - core::Extension::kChromiumExperimentalFullPtrParameters, - core::Extension::kChromiumExperimentalPushConstant, - core::Extension::kChromiumExperimentalReadWriteStorageTexture, - core::Extension::kChromiumExperimentalSubgroups, - core::Extension::kF16, - core::Extension::kChromiumInternalDualSourceBlending, + wgsl::Extension::kChromiumDisableUniformityAnalysis, + wgsl::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kChromiumExperimentalFullPtrParameters, + wgsl::Extension::kChromiumExperimentalPushConstant, + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture, + wgsl::Extension::kChromiumExperimentalSubgroups, + wgsl::Extension::kF16, + wgsl::Extension::kChromiumInternalDualSourceBlending, })) { return false; } @@ -334,14 +334,14 @@ return Operand(module_.NextId()); } -bool Builder::GenerateExtension(core::Extension extension) { +bool Builder::GenerateExtension(wgsl::Extension extension) { switch (extension) { - case core::Extension::kChromiumExperimentalDp4A: + case wgsl::Extension::kChromiumExperimentalDp4A: module_.PushExtension("SPV_KHR_integer_dot_product"); module_.PushCapability(SpvCapabilityDotProductKHR); module_.PushCapability(SpvCapabilityDotProductInput4x8BitPackedKHR); break; - case core::Extension::kF16: + case wgsl::Extension::kF16: module_.PushCapability(SpvCapabilityFloat16); module_.PushCapability(SpvCapabilityUniformAndStorageBuffer16BitAccess); module_.PushCapability(SpvCapabilityStorageBuffer16BitAccess);
diff --git a/src/tint/lang/spirv/writer/ast_printer/builder.h b/src/tint/lang/spirv/writer/ast_printer/builder.h index 0f0c84b..c736697 100644 --- a/src/tint/lang/spirv/writer/ast_printer/builder.h +++ b/src/tint/lang/spirv/writer/ast_printer/builder.h
@@ -153,7 +153,7 @@ /// not supported. /// @param ext the extension to generate /// @returns true on success. - bool GenerateExtension(core::Extension ext); + bool GenerateExtension(wgsl::Extension ext); /// Generates a label for the given id. Emits an error and returns false if /// we're currently outside a function. /// @param id the id to use for the label
diff --git a/src/tint/lang/spirv/writer/ast_printer/constructor_expression_test.cc b/src/tint/lang/spirv/writer/ast_printer/constructor_expression_test.cc index b0618dd..30b1654 100644 --- a/src/tint/lang/spirv/writer/ast_printer/constructor_expression_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/constructor_expression_test.cc
@@ -214,7 +214,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_F16_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<f16>(2_h); WrapInFunction(cast); @@ -289,7 +289,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec2_With_F16_Literal) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(2_h); WrapInFunction(cast); @@ -333,7 +333,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec2_With_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<vec2<f16>>("x", "x"); @@ -378,7 +378,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec2_With_F16_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(1_h, 2_h); WrapInFunction(cast); @@ -423,7 +423,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec2_F16_With_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(1_h, 2_h))); auto* cast = Call<vec2<f16>>("x"); @@ -468,7 +468,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec2_F16_With_Vec2_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(Call<vec2<f16>>(1_h, 2_h)); WrapInFunction(cast); @@ -514,7 +514,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<vec3<f16>>("x", "x", "x"); @@ -561,7 +561,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(1_h, 2_h, 3_h); WrapInFunction(cast); @@ -652,7 +652,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<vec3<f16>>("x", "x", "x"); @@ -699,7 +699,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16_F16_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(1_h, 2_h, 3_h); WrapInFunction(cast); @@ -750,7 +750,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(2_h, 3_h))); auto* cast = Call<vec3<f16>>(1_h, "x"); @@ -801,7 +801,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_F16_Vec2_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(1_h, Call<vec2<f16>>(2_h, 3_h)); WrapInFunction(cast); @@ -852,7 +852,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(1_h, 2_h))); auto* cast = Call<vec3<f16>>("x", 3_h); @@ -903,7 +903,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_With_Vec2_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec2<f16>>(1_h, 2_h), 3_h); WrapInFunction(cast); @@ -950,7 +950,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_F16_With_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec3<f16>(), Call<vec3<f16>>(1_h, 2_h, 3_h))); auto* cast = Call<vec3<f16>>("x"); @@ -997,7 +997,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec3_F16_With_Vec3_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec3<f16>>(1_h, 2_h, 3_h)); WrapInFunction(cast); @@ -1083,7 +1083,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<vec4<f16>>("x"); @@ -1126,7 +1126,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h); WrapInFunction(cast); @@ -1172,7 +1172,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_F16_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<vec4<f16>>("x", "x", "x", "x"); @@ -1221,7 +1221,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_F16_F16_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(1_h, 2_h, 3_h, 4_h); WrapInFunction(cast); @@ -1272,7 +1272,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(1_h, 2_h))); auto* cast = Call<vec4<f16>>(1_h, 2_h, "x"); @@ -1323,7 +1323,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_F16_Vec2_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(1_h, 2_h, Call<vec2<f16>>(3_h, 4_h)); WrapInFunction(cast); @@ -1376,7 +1376,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(2_h, 3_h))); auto* cast = Call<vec4<f16>>(1_h, "x", 4_h); @@ -1429,7 +1429,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_Vec2_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(1_h, Call<vec2<f16>>(2_h, 3_h), 4_h); WrapInFunction(cast); @@ -1482,7 +1482,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_Vec2_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(1_h, 2_h))); auto* cast = Call<vec4<f16>>("x", 3_h, 4_h); @@ -1535,7 +1535,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_Vec2_F16_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(1_h, 2_h), 3_h, 4_h); WrapInFunction(cast); @@ -1589,7 +1589,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_F16_With_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec2<f16>(), Call<vec2<f16>>(1_h, 2_h))); auto* cast = Call<vec4<f16>>("x", "x"); @@ -1641,7 +1641,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_F16_With_Vec2_Vec2_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(1_h, 2_h), Call<vec2<f16>>(1_h, 2_h)); WrapInFunction(cast); @@ -1690,7 +1690,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec3<f16>(), Call<vec3<f16>>(2_h, 2_h, 2_h))); auto* cast = Call<vec4<f16>>(2_h, "x"); @@ -1738,7 +1738,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_F16_Vec3_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, Call<vec3<f16>>(2_h, 2_h, 2_h)); WrapInFunction(cast); @@ -1786,7 +1786,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_Vec3_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.vec3<f16>(), Call<vec3<f16>>(2_h, 2_h, 2_h))); auto* cast = Call<vec4<f16>>("x", 2_h); @@ -1834,7 +1834,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_With_Vec3_F16_Const) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), 2_h); WrapInFunction(cast); @@ -1871,7 +1871,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Vec4_F16_With_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* value = Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h); auto* cast = Call<vec4<f16>>(value); @@ -1912,7 +1912,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_F16_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* ctor = Call<f16>(2_h); GlobalConst("g", ty.f16(), ctor); @@ -1952,7 +1952,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_F16_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* ctor = Call<f16>(2_h); GlobalVar("g", ty.f16(), core::AddressSpace::kPrivate, ctor); @@ -1992,7 +1992,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_U32_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* ctor = Call<u32>(1.5_h); GlobalConst("g", ty.u32(), ctor); @@ -2032,7 +2032,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_U32_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* ctor = Call<u32>(1.5_h); GlobalVar("g", ty.u32(), core::AddressSpace::kPrivate, ctor); @@ -2074,7 +2074,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec2_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(2_h); GlobalConst("g", ty.vec2<f16>(), cast); @@ -2115,7 +2115,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec2_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(2_h); auto* g = GlobalVar("g", ty.vec2<f16>(), core::AddressSpace::kPrivate, cast); @@ -2156,7 +2156,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec2_F16_With_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(Call<vec2<f16>>(2_h, 2_h)); GlobalConst("g", ty.vec2<f16>(), cast); @@ -2201,7 +2201,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec2_F16_With_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec2<f16>>(Call<vec2<f16>>(2_h, 2_h)); GlobalVar("a", ty.vec2<f16>(), core::AddressSpace::kPrivate, cast); @@ -2246,7 +2246,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec3_F16_With_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h)); GlobalConst("g", ty.vec3<f16>(), cast); @@ -2291,7 +2291,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec3_F16_With_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h)); GlobalVar("a", ty.vec3<f16>(), core::AddressSpace::kPrivate, cast); @@ -2336,7 +2336,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_F16_With_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h)); GlobalConst("g", ty.vec4<f16>(), cast); @@ -2381,7 +2381,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_F16_With_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h)); GlobalVar("a", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -2426,7 +2426,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec3_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(2_h); GlobalConst("g", ty.vec3<f16>(), cast); @@ -2467,7 +2467,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec3_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(2_h); auto* g = GlobalVar("g", ty.vec3<f16>(), core::AddressSpace::kPrivate, cast); @@ -2508,7 +2508,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec3_With_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(2_h, Call<vec2<f16>>(2_h, 2_h)); GlobalConst("g", ty.vec3<f16>(), cast); @@ -2549,7 +2549,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec3_With_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(2_h, Call<vec2<f16>>(2_h, 2_h)); auto* g = GlobalVar("g", ty.vec3<f16>(), core::AddressSpace::kPrivate, cast); @@ -2590,7 +2590,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec3_With_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec2<f16>>(2_h, 2_h), 2_h); GlobalConst("g", ty.vec3<f16>(), cast); @@ -2631,7 +2631,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec3_With_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec2<f16>>(2_h, 2_h), 2_h); auto* g = GlobalVar("g", ty.vec3<f16>(), core::AddressSpace::kPrivate, cast); @@ -2672,7 +2672,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h); GlobalConst("g", ty.vec4<f16>(), cast); @@ -2713,7 +2713,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -2754,7 +2754,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_With_F16_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, 2_h, Call<vec2<f16>>(2_h, 2_h)); GlobalConst("g", ty.vec4<f16>(), cast); @@ -2795,7 +2795,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_F16_F16_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, 2_h, Call<vec2<f16>>(2_h, 2_h)); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -2836,7 +2836,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_With_F16_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, Call<vec2<f16>>(2_h, 2_h), 2_h); GlobalConst("g", ty.vec4<f16>(), cast); @@ -2877,7 +2877,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_F16_Vec2_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, Call<vec2<f16>>(2_h, 2_h), 2_h); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -2918,7 +2918,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_With_Vec2_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(2_h, 2_h), 2_h, 2_h); GlobalConst("g", ty.vec4<f16>(), cast); @@ -2959,7 +2959,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_Vec2_F16_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(2_h, 2_h), 2_h, 2_h); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -3000,7 +3000,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_F16_With_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h)); GlobalConst("g", ty.vec4<f16>(), cast); @@ -3041,7 +3041,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_F16_With_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h)); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -3098,7 +3098,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_F16_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(2_h, Call<vec3<f16>>(2_h, 2_h, 2_h)); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -3139,7 +3139,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalConst_Vec4_With_Vec3_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), 2_h); GlobalConst("g", ty.vec4<f16>(), cast); @@ -3180,7 +3180,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_GlobalVar_Vec4_With_Vec3_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec4<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), 2_h); auto* g = GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kPrivate, cast); @@ -3216,7 +3216,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat2x2_F16_With_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat2x2<f16>>(Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h)); WrapInFunction(cast); @@ -3255,7 +3255,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat3x2_F16_With_Vec2_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat3x2<f16>>(Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h)); @@ -3295,7 +3295,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat4x2_F16_With_Vec2_Vec2_Vec2_Vec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat4x2<f16>>(Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h), Call<vec2<f16>>(2_h, 2_h)); @@ -3334,7 +3334,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat2x3_F16_With_Vec3_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat2x3<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h)); WrapInFunction(cast); @@ -3373,7 +3373,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat3x3_F16_With_Vec3_Vec3_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat3x3<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h)); @@ -3413,7 +3413,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat4x3_F16_With_Vec3_Vec3_Vec3_Vec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat4x3<f16>>(Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h), Call<vec3<f16>>(2_h, 2_h, 2_h)); @@ -3453,7 +3453,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat2x4_F16_With_Vec4_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat2x4<f16>>(Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h), Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h)); @@ -3494,7 +3494,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat3x4_F16_With_Vec4_Vec4_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat3x4<f16>>(Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h), Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h), @@ -3536,7 +3536,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Mat4x4_F16_With_Vec4_Vec4_Vec4_Vec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<mat4x4<f16>>(Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h), Call<vec4<f16>>(2_h, 2_h, 2_h, 2_h), @@ -3576,7 +3576,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Array_5_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<array<f16, 5>>(2_h, 2_h, 2_h, 2_h, 2_h); WrapInFunction(cast); @@ -3618,7 +3618,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Array_2_Vec3_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* first = Call<vec3<f16>>(1_h, 2_h, 3_h); auto* second = Call<vec3<f16>>(1_h, 2_h, 3_h); @@ -3747,7 +3747,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_ZeroInit_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* t = Call<f16>(); @@ -3854,7 +3854,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_ZeroInit_Matrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* t = Call<mat4x2<f16>>(); @@ -3961,7 +3961,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_F16_To_I32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2.4_h))); auto* cast = Call<i32>("x"); @@ -4035,7 +4035,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_F16_To_U32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2.4_h))); auto* cast = Call<u32>("x"); @@ -4109,7 +4109,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_F16_To_F32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f16(), Expr(2_h))); auto* cast = Call<f32>("x"); @@ -4135,7 +4135,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_I32_To_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.i32(), Expr(2_i))); auto* cast = Call<f16>("x"); @@ -4161,7 +4161,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_U32_To_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.u32(), Expr(2_u))); auto* cast = Call<f16>("x"); @@ -4187,7 +4187,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_F32_To_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = Decl(Var("x", ty.f32(), Expr(2_f))); auto* cast = Call<f16>("x"); @@ -4265,7 +4265,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_F16_to_I32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -4345,7 +4345,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_F16_to_U32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -4425,7 +4425,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_F16_to_F32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<f16>(), core::AddressSpace::kPrivate); @@ -4453,7 +4453,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_I32_to_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<i32>(), core::AddressSpace::kPrivate); @@ -4481,7 +4481,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_U32_to_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<u32>(), core::AddressSpace::kPrivate); @@ -4509,7 +4509,7 @@ } TEST_F(SpvBuilderConstructorTest, Type_Convert_Vectors_F32_to_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* var = GlobalVar("i", ty.vec3<f32>(), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/spirv/writer/ast_printer/global_variable_test.cc b/src/tint/lang/spirv/writer/ast_printer/global_variable_test.cc index d5d028a..97ea5db 100644 --- a/src/tint/lang/spirv/writer/ast_printer/global_variable_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/global_variable_test.cc
@@ -120,7 +120,7 @@ TEST_F(SpirvASTPrinterTest, GlobalConst_Vec_F16_Initializer) { // const c = vec3<f16>(1h, 2h, 3h); // var v = c; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* c = GlobalConst("c", Call<vec3<f16>>(1_h, 2_h, 3_h)); GlobalVar("v", core::AddressSpace::kPrivate, Expr(c));
diff --git a/src/tint/lang/spirv/writer/ast_printer/literal_test.cc b/src/tint/lang/spirv/writer/ast_printer/literal_test.cc index 4376ce8..33dbe0f 100644 --- a/src/tint/lang/spirv/writer/ast_printer/literal_test.cc +++ b/src/tint/lang/spirv/writer/ast_printer/literal_test.cc
@@ -164,7 +164,7 @@ } TEST_F(SpirvASTPrinterTest, Literal_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* i = create<ast::FloatLiteralExpression>(23.245, ast::FloatLiteralExpression::Suffix::kH); WrapInFunction(i); @@ -181,7 +181,7 @@ } TEST_F(SpirvASTPrinterTest, Literal_F16_Dedup) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* i1 = create<ast::FloatLiteralExpression>(23.245, ast::FloatLiteralExpression::Suffix::kH); auto* i2 = create<ast::FloatLiteralExpression>(23.245, ast::FloatLiteralExpression::Suffix::kH);
diff --git a/src/tint/lang/spirv/writer/ast_raise/BUILD.bazel b/src/tint/lang/spirv/writer/ast_raise/BUILD.bazel index 52b5e8b..4712380 100644 --- a/src/tint/lang/spirv/writer/ast_raise/BUILD.bazel +++ b/src/tint/lang/spirv/writer/ast_raise/BUILD.bazel
@@ -46,6 +46,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program", @@ -83,6 +84,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast/transform:test",
diff --git a/src/tint/lang/spirv/writer/ast_raise/BUILD.cmake b/src/tint/lang/spirv/writer/ast_raise/BUILD.cmake index 3ae2021..c20fa20 100644 --- a/src/tint/lang/spirv/writer/ast_raise/BUILD.cmake +++ b/src/tint/lang/spirv/writer/ast_raise/BUILD.cmake
@@ -47,6 +47,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program @@ -87,6 +88,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_transform_test
diff --git a/src/tint/lang/spirv/writer/ast_raise/BUILD.gn b/src/tint/lang/spirv/writer/ast_raise/BUILD.gn index fbcc1cc..4c4d9f3 100644 --- a/src/tint/lang/spirv/writer/ast_raise/BUILD.gn +++ b/src/tint/lang/spirv/writer/ast_raise/BUILD.gn
@@ -49,6 +49,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program", @@ -87,6 +88,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/ast/transform:unittests",
diff --git a/src/tint/lang/spirv/writer/ast_raise/clamp_frag_depth.cc b/src/tint/lang/spirv/writer/ast_raise/clamp_frag_depth.cc index af4a0c5..e49c951 100644 --- a/src/tint/lang/spirv/writer/ast_raise/clamp_frag_depth.cc +++ b/src/tint/lang/spirv/writer/ast_raise/clamp_frag_depth.cc
@@ -81,7 +81,7 @@ // fn clamp_frag_depth(v : f32) -> f32 { // return clamp(v, frag_depth_clamp_args.min, frag_depth_clamp_args.max); // } - b.Enable(core::Extension::kChromiumExperimentalPushConstant); + b.Enable(wgsl::Extension::kChromiumExperimentalPushConstant); b.Structure(b.Symbols().New("FragDepthClampArgs"), Vector{b.Member("min", b.ty.f32()), b.Member("max", b.ty.f32())});
diff --git a/src/tint/lang/spirv/writer/printer/BUILD.bazel b/src/tint/lang/spirv/writer/printer/BUILD.bazel index 27a6c34..672fdad 100644 --- a/src/tint/lang/spirv/writer/printer/BUILD.bazel +++ b/src/tint/lang/spirv/writer/printer/BUILD.bazel
@@ -43,6 +43,7 @@ "//src/tint/lang/spirv/intrinsic/data", "//src/tint/lang/spirv/ir", "//src/tint/lang/spirv/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/spirv/writer/printer/BUILD.cmake b/src/tint/lang/spirv/writer/printer/BUILD.cmake index 18d6d86..e296599 100644 --- a/src/tint/lang/spirv/writer/printer/BUILD.cmake +++ b/src/tint/lang/spirv/writer/printer/BUILD.cmake
@@ -44,6 +44,7 @@ tint_lang_spirv_intrinsic_data tint_lang_spirv_ir tint_lang_spirv_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/spirv/writer/printer/BUILD.gn b/src/tint/lang/spirv/writer/printer/BUILD.gn index 07c5fcf..fd1dd71 100644 --- a/src/tint/lang/spirv/writer/printer/BUILD.gn +++ b/src/tint/lang/spirv/writer/printer/BUILD.gn
@@ -42,6 +42,7 @@ "${tint_src_dir}/lang/spirv/intrinsic/data", "${tint_src_dir}/lang/spirv/ir", "${tint_src_dir}/lang/spirv/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/BUILD.bazel b/src/tint/lang/wgsl/BUILD.bazel index 44d29ff..d235e5b 100644 --- a/src/tint/lang/wgsl/BUILD.bazel +++ b/src/tint/lang/wgsl/BUILD.bazel
@@ -24,9 +24,38 @@ load("//src/tint:flags.bzl", "COPTS") load("@bazel_skylib//lib:selects.bzl", "selects") cc_library( + name = "wgsl", + srcs = [ + "diagnostic_rule.cc", + "diagnostic_severity.cc", + "extension.cc", + ], + hdrs = [ + "diagnostic_rule.h", + "diagnostic_severity.h", + "extension.h", + ], + deps = [ + "//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/rtti", + "//src/tint/utils/text", + "//src/tint/utils/traits", + ], + copts = COPTS, + visibility = ["//visibility:public"], +) +cc_library( name = "test", alwayslink = True, srcs = [ + "diagnostic_rule_test.cc", + "diagnostic_severity_test.cc", + "extension_test.cc", "wgsl_test.cc", ] + select({ ":tint_build_wgsl_reader_and_tint_build_wgsl_writer": [ @@ -40,6 +69,7 @@ "//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/helpers:test", "//src/tint/lang/wgsl/program", @@ -67,6 +97,28 @@ copts = COPTS, visibility = ["//visibility:public"], ) +cc_library( + name = "bench", + srcs = [ + "diagnostic_rule_bench.cc", + "diagnostic_severity_bench.cc", + "extension_bench.cc", + ], + deps = [ + "//src/tint/lang/wgsl", + "//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/rtti", + "//src/tint/utils/text", + "//src/tint/utils/traits", + ], + copts = COPTS, + visibility = ["//visibility:public"], +) alias( name = "tint_build_wgsl_reader",
diff --git a/src/tint/lang/wgsl/BUILD.cmake b/src/tint/lang/wgsl/BUILD.cmake index 64bdc34..c4ee2f3 100644 --- a/src/tint/lang/wgsl/BUILD.cmake +++ b/src/tint/lang/wgsl/BUILD.cmake
@@ -31,10 +31,38 @@ include(lang/wgsl/writer/BUILD.cmake) ################################################################################ +# Target: tint_lang_wgsl +# Kind: lib +################################################################################ +tint_add_target(tint_lang_wgsl lib + lang/wgsl/diagnostic_rule.cc + lang/wgsl/diagnostic_rule.h + lang/wgsl/diagnostic_severity.cc + lang/wgsl/diagnostic_severity.h + lang/wgsl/extension.cc + lang/wgsl/extension.h +) + +tint_target_add_dependencies(tint_lang_wgsl lib + tint_utils_containers + tint_utils_diagnostic + tint_utils_ice + tint_utils_macros + tint_utils_math + tint_utils_memory + tint_utils_rtti + tint_utils_text + tint_utils_traits +) + +################################################################################ # Target: tint_lang_wgsl_test # Kind: test ################################################################################ tint_add_target(tint_lang_wgsl_test test + lang/wgsl/diagnostic_rule_test.cc + lang/wgsl/diagnostic_severity_test.cc + lang/wgsl/extension_test.cc lang/wgsl/wgsl_test.cc ) @@ -44,6 +72,7 @@ tint_lang_core_constant tint_lang_core_ir tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_helpers_test tint_lang_wgsl_program @@ -77,3 +106,26 @@ "lang/wgsl/ir_roundtrip_test.cc" ) endif(TINT_BUILD_WGSL_READER AND TINT_BUILD_WGSL_WRITER) + +################################################################################ +# Target: tint_lang_wgsl_bench +# Kind: bench +################################################################################ +tint_add_target(tint_lang_wgsl_bench bench + lang/wgsl/diagnostic_rule_bench.cc + lang/wgsl/diagnostic_severity_bench.cc + lang/wgsl/extension_bench.cc +) + +tint_target_add_dependencies(tint_lang_wgsl_bench bench + tint_lang_wgsl + tint_utils_containers + tint_utils_diagnostic + tint_utils_ice + tint_utils_macros + tint_utils_math + tint_utils_memory + tint_utils_rtti + tint_utils_text + tint_utils_traits +)
diff --git a/src/tint/lang/wgsl/BUILD.gn b/src/tint/lang/wgsl/BUILD.gn index 67a6ed6..dafa9c3 100644 --- a/src/tint/lang/wgsl/BUILD.gn +++ b/src/tint/lang/wgsl/BUILD.gn
@@ -28,10 +28,37 @@ if (tint_build_unittests) { import("//testing/test.gni") } + +libtint_source_set("wgsl") { + sources = [ + "diagnostic_rule.cc", + "diagnostic_rule.h", + "diagnostic_severity.cc", + "diagnostic_severity.h", + "extension.cc", + "extension.h", + ] + deps = [ + "${tint_src_dir}/utils/containers", + "${tint_src_dir}/utils/diagnostic", + "${tint_src_dir}/utils/ice", + "${tint_src_dir}/utils/macros", + "${tint_src_dir}/utils/math", + "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/rtti", + "${tint_src_dir}/utils/text", + "${tint_src_dir}/utils/traits", + ] +} if (tint_build_unittests) { tint_unittests_source_set("unittests") { testonly = true - sources = [ "wgsl_test.cc" ] + sources = [ + "diagnostic_rule_test.cc", + "diagnostic_severity_test.cc", + "extension_test.cc", + "wgsl_test.cc", + ] deps = [ "${tint_src_dir}:gmock_and_gtest", "${tint_src_dir}/api/common", @@ -39,6 +66,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/helpers:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/ast/BUILD.bazel b/src/tint/lang/wgsl/ast/BUILD.bazel index ebc4a92..1674ad6 100644 --- a/src/tint/lang/wgsl/ast/BUILD.bazel +++ b/src/tint/lang/wgsl/ast/BUILD.bazel
@@ -190,6 +190,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/utils/containers", "//src/tint/utils/diagnostic", "//src/tint/utils/ice", @@ -280,6 +281,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/ast/BUILD.cmake b/src/tint/lang/wgsl/ast/BUILD.cmake index 3a06809..9715482 100644 --- a/src/tint/lang/wgsl/ast/BUILD.cmake +++ b/src/tint/lang/wgsl/ast/BUILD.cmake
@@ -191,6 +191,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_utils_containers tint_utils_diagnostic tint_utils_ice @@ -281,6 +282,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_program
diff --git a/src/tint/lang/wgsl/ast/BUILD.gn b/src/tint/lang/wgsl/ast/BUILD.gn index d74d107..3732774 100644 --- a/src/tint/lang/wgsl/ast/BUILD.gn +++ b/src/tint/lang/wgsl/ast/BUILD.gn
@@ -193,6 +193,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/utils/containers", "${tint_src_dir}/utils/diagnostic", "${tint_src_dir}/utils/ice", @@ -282,6 +283,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/ast/block_statement_test.cc b/src/tint/lang/wgsl/ast/block_statement_test.cc index c9f0289..f4de519 100644 --- a/src/tint/lang/wgsl/ast/block_statement_test.cc +++ b/src/tint/lang/wgsl/ast/block_statement_test.cc
@@ -45,8 +45,8 @@ auto* d = create<DiscardStatement>(); auto* ptr = d; - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* b = create<BlockStatement>(tint::Vector{d}, tint::Vector{attr1, attr2}); ASSERT_EQ(b->statements.Length(), 1u);
diff --git a/src/tint/lang/wgsl/ast/builder.h b/src/tint/lang/wgsl/ast/builder.h index e575633..72f9052 100644 --- a/src/tint/lang/wgsl/ast/builder.h +++ b/src/tint/lang/wgsl/ast/builder.h
@@ -22,7 +22,6 @@ #include "src/tint/api/common/override_id.h" #include "src/tint/lang/core/constant/manager.h" -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/core/fluent_types.h" #include "src/tint/lang/core/interpolation_sampling.h" #include "src/tint/lang/core/interpolation_type.h" @@ -100,6 +99,7 @@ #include "src/tint/lang/wgsl/ast/variable_decl_statement.h" #include "src/tint/lang/wgsl/ast/while_statement.h" #include "src/tint/lang/wgsl/ast/workgroup_attribute.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/utils/id/generation_id.h" #include "src/tint/utils/text/string.h" @@ -1586,7 +1586,7 @@ /// Adds the extension to the list of enable directives at the top of the module. /// @param extension the extension to enable /// @return an `ast::Enable` enabling the given extension. - const ast::Enable* Enable(core::Extension extension) { + const ast::Enable* Enable(wgsl::Extension extension) { auto* ext = create<ast::Extension>(extension); auto* enable = create<ast::Enable>(Vector{ext}); AST().AddEnable(enable); @@ -1597,7 +1597,7 @@ /// @param source the enable source /// @param extension the extension to enable /// @return an `ast::Enable` enabling the given extension. - const ast::Enable* Enable(const Source& source, core::Extension extension) { + const ast::Enable* Enable(const Source& source, wgsl::Extension extension) { auto* ext = create<ast::Extension>(source, extension); auto* enable = create<ast::Enable>(source, Vector{ext}); AST().AddEnable(enable); @@ -3350,7 +3350,7 @@ /// @returns the diagnostic attribute pointer template <typename... RULE_ARGS> const ast::DiagnosticAttribute* DiagnosticAttribute(const Source& source, - core::DiagnosticSeverity severity, + wgsl::DiagnosticSeverity severity, RULE_ARGS&&... rule_args) { return create<ast::DiagnosticAttribute>( source, ast::DiagnosticControl( @@ -3362,7 +3362,7 @@ /// @param rule_args the arguments used to construct the rule name /// @returns the diagnostic attribute pointer template <typename... RULE_ARGS> - const ast::DiagnosticAttribute* DiagnosticAttribute(core::DiagnosticSeverity severity, + const ast::DiagnosticAttribute* DiagnosticAttribute(wgsl::DiagnosticSeverity severity, RULE_ARGS&&... rule_args) { return create<ast::DiagnosticAttribute>( source_, ast::DiagnosticControl( @@ -3376,7 +3376,7 @@ /// @returns the diagnostic directive pointer template <typename... RULE_ARGS> const ast::DiagnosticDirective* DiagnosticDirective(const Source& source, - core::DiagnosticSeverity severity, + wgsl::DiagnosticSeverity severity, RULE_ARGS&&... rule_args) { auto* rule = DiagnosticRuleName(std::forward<RULE_ARGS>(rule_args)...); auto* directive = @@ -3390,7 +3390,7 @@ /// @param rule_args the arguments used to construct the rule name /// @returns the diagnostic directive pointer template <typename... RULE_ARGS> - const ast::DiagnosticDirective* DiagnosticDirective(core::DiagnosticSeverity severity, + const ast::DiagnosticDirective* DiagnosticDirective(wgsl::DiagnosticSeverity severity, RULE_ARGS&&... rule_args) { auto* rule = DiagnosticRuleName(std::forward<RULE_ARGS>(rule_args)...); auto* directive =
diff --git a/src/tint/lang/wgsl/ast/diagnostic_attribute_test.cc b/src/tint/lang/wgsl/ast/diagnostic_attribute_test.cc index 3d6744f..c9dbe56 100644 --- a/src/tint/lang/wgsl/ast/diagnostic_attribute_test.cc +++ b/src/tint/lang/wgsl/ast/diagnostic_attribute_test.cc
@@ -21,17 +21,17 @@ using DiagnosticAttributeTest = TestHelper; TEST_F(DiagnosticAttributeTest, Name) { - auto* d = DiagnosticAttribute(core::DiagnosticSeverity::kWarning, "foo"); + auto* d = DiagnosticAttribute(wgsl::DiagnosticSeverity::kWarning, "foo"); EXPECT_EQ(d->Name(), "diagnostic"); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kWarning); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kWarning); EXPECT_EQ(d->control.rule_name->category, nullptr); CheckIdentifier(d->control.rule_name->name, "foo"); } TEST_F(DiagnosticAttributeTest, CategoryAndName) { - auto* d = DiagnosticAttribute(core::DiagnosticSeverity::kWarning, "foo", "bar"); + auto* d = DiagnosticAttribute(wgsl::DiagnosticSeverity::kWarning, "foo", "bar"); EXPECT_EQ(d->Name(), "diagnostic"); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kWarning); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kWarning); CheckIdentifier(d->control.rule_name->category, "foo"); CheckIdentifier(d->control.rule_name->name, "bar"); }
diff --git a/src/tint/lang/wgsl/ast/diagnostic_control.cc b/src/tint/lang/wgsl/ast/diagnostic_control.cc index 4cec214..74935c7 100644 --- a/src/tint/lang/wgsl/ast/diagnostic_control.cc +++ b/src/tint/lang/wgsl/ast/diagnostic_control.cc
@@ -16,15 +16,15 @@ #include <string> -#include "src/tint/lang/core/diagnostic_severity.h" #include "src/tint/lang/wgsl/ast/identifier.h" #include "src/tint/lang/wgsl/ast/templated_identifier.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" namespace tint::ast { DiagnosticControl::DiagnosticControl() = default; -DiagnosticControl::DiagnosticControl(core::DiagnosticSeverity sev, const DiagnosticRuleName* rule) +DiagnosticControl::DiagnosticControl(wgsl::DiagnosticSeverity sev, const DiagnosticRuleName* rule) : severity(sev), rule_name(rule) { TINT_ASSERT(rule != nullptr); }
diff --git a/src/tint/lang/wgsl/ast/diagnostic_control.h b/src/tint/lang/wgsl/ast/diagnostic_control.h index cf5cefd..c0e492b 100644 --- a/src/tint/lang/wgsl/ast/diagnostic_control.h +++ b/src/tint/lang/wgsl/ast/diagnostic_control.h
@@ -18,7 +18,7 @@ #include <string> #include <unordered_map> -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include "src/tint/utils/diagnostic/diagnostic.h" // Forward declarations @@ -37,13 +37,13 @@ /// Constructor /// @param sev the diagnostic severity /// @param rule the diagnostic rule name - DiagnosticControl(core::DiagnosticSeverity sev, const DiagnosticRuleName* rule); + DiagnosticControl(wgsl::DiagnosticSeverity sev, const DiagnosticRuleName* rule); /// Move constructor DiagnosticControl(DiagnosticControl&&); /// The diagnostic severity control. - core::DiagnosticSeverity severity = core::DiagnosticSeverity::kUndefined; + wgsl::DiagnosticSeverity severity = wgsl::DiagnosticSeverity::kUndefined; /// The diagnostic rule name. const DiagnosticRuleName* rule_name = nullptr;
diff --git a/src/tint/lang/wgsl/ast/diagnostic_control_test.cc b/src/tint/lang/wgsl/ast/diagnostic_control_test.cc index 347a96d..b7738e6 100644 --- a/src/tint/lang/wgsl/ast/diagnostic_control_test.cc +++ b/src/tint/lang/wgsl/ast/diagnostic_control_test.cc
@@ -15,9 +15,9 @@ #include <string> #include "gtest/gtest-spi.h" -#include "src/tint/lang/core/diagnostic_severity.h" #include "src/tint/lang/wgsl/ast/diagnostic_control.h" #include "src/tint/lang/wgsl/ast/helper_test.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" namespace tint::ast { namespace { @@ -28,7 +28,7 @@ EXPECT_FATAL_FAILURE( { ProgramBuilder b; - DiagnosticControl control(core::DiagnosticSeverity::kWarning, nullptr); + DiagnosticControl control(wgsl::DiagnosticSeverity::kWarning, nullptr); }, "internal compiler error"); }
diff --git a/src/tint/lang/wgsl/ast/diagnostic_directive_test.cc b/src/tint/lang/wgsl/ast/diagnostic_directive_test.cc index ceefeed..479bade 100644 --- a/src/tint/lang/wgsl/ast/diagnostic_directive_test.cc +++ b/src/tint/lang/wgsl/ast/diagnostic_directive_test.cc
@@ -23,24 +23,24 @@ TEST_F(DiagnosticDirectiveTest, Name) { auto* d = - DiagnosticDirective(Source{{{10, 5}, {10, 15}}}, core::DiagnosticSeverity::kWarning, "foo"); + DiagnosticDirective(Source{{{10, 5}, {10, 15}}}, wgsl::DiagnosticSeverity::kWarning, "foo"); EXPECT_EQ(d->source.range.begin.line, 10u); EXPECT_EQ(d->source.range.begin.column, 5u); EXPECT_EQ(d->source.range.end.line, 10u); EXPECT_EQ(d->source.range.end.column, 15u); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kWarning); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kWarning); EXPECT_EQ(d->control.rule_name->category, nullptr); CheckIdentifier(d->control.rule_name->name, "foo"); } TEST_F(DiagnosticDirectiveTest, CategoryAndName) { - auto* d = DiagnosticDirective(Source{{{10, 5}, {10, 15}}}, core::DiagnosticSeverity::kWarning, + auto* d = DiagnosticDirective(Source{{{10, 5}, {10, 15}}}, wgsl::DiagnosticSeverity::kWarning, "foo", "bar"); EXPECT_EQ(d->source.range.begin.line, 10u); EXPECT_EQ(d->source.range.begin.column, 5u); EXPECT_EQ(d->source.range.end.line, 10u); EXPECT_EQ(d->source.range.end.column, 15u); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kWarning); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kWarning); CheckIdentifier(d->control.rule_name->category, "foo"); CheckIdentifier(d->control.rule_name->name, "bar"); }
diff --git a/src/tint/lang/wgsl/ast/enable.cc b/src/tint/lang/wgsl/ast/enable.cc index d63aaa5..688e750 100644 --- a/src/tint/lang/wgsl/ast/enable.cc +++ b/src/tint/lang/wgsl/ast/enable.cc
@@ -26,7 +26,7 @@ Enable::~Enable() = default; -bool Enable::HasExtension(core::Extension ext) const { +bool Enable::HasExtension(wgsl::Extension ext) const { for (auto* e : extensions) { if (e->name == ext) { return true;
diff --git a/src/tint/lang/wgsl/ast/enable.h b/src/tint/lang/wgsl/ast/enable.h index 35afa5b..dc1cc0c 100644 --- a/src/tint/lang/wgsl/ast/enable.h +++ b/src/tint/lang/wgsl/ast/enable.h
@@ -42,7 +42,7 @@ /// @param ext the extension to search for /// @returns true if this Enable lists the given extension - bool HasExtension(core::Extension ext) const; + bool HasExtension(wgsl::Extension ext) const; /// Clones this node and all transitive child nodes using the `CloneContext` `ctx`. /// @param ctx the clone context
diff --git a/src/tint/lang/wgsl/ast/enable_test.cc b/src/tint/lang/wgsl/ast/enable_test.cc index 667cc05..5f52c20 100644 --- a/src/tint/lang/wgsl/ast/enable_test.cc +++ b/src/tint/lang/wgsl/ast/enable_test.cc
@@ -22,19 +22,19 @@ using EnableTest = TestHelper; TEST_F(EnableTest, Creation) { - auto* ext = Enable(Source{{{20, 2}, {20, 5}}}, core::Extension::kF16); + auto* ext = Enable(Source{{{20, 2}, {20, 5}}}, wgsl::Extension::kF16); EXPECT_EQ(ext->source.range.begin.line, 20u); EXPECT_EQ(ext->source.range.begin.column, 2u); EXPECT_EQ(ext->source.range.end.line, 20u); EXPECT_EQ(ext->source.range.end.column, 5u); ASSERT_EQ(ext->extensions.Length(), 1u); - EXPECT_EQ(ext->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(ext->extensions[0]->name, wgsl::Extension::kF16); } TEST_F(EnableTest, HasExtension) { - auto* ext = Enable(Source{{{20, 2}, {20, 5}}}, core::Extension::kF16); - EXPECT_TRUE(ext->HasExtension(core::Extension::kF16)); - EXPECT_FALSE(ext->HasExtension(core::Extension::kChromiumDisableUniformityAnalysis)); + auto* ext = Enable(Source{{{20, 2}, {20, 5}}}, wgsl::Extension::kF16); + EXPECT_TRUE(ext->HasExtension(wgsl::Extension::kF16)); + EXPECT_FALSE(ext->HasExtension(wgsl::Extension::kChromiumDisableUniformityAnalysis)); } } // namespace
diff --git a/src/tint/lang/wgsl/ast/extension.cc b/src/tint/lang/wgsl/ast/extension.cc index 3413c9f..07251fb 100644 --- a/src/tint/lang/wgsl/ast/extension.cc +++ b/src/tint/lang/wgsl/ast/extension.cc
@@ -18,13 +18,13 @@ #include "src/tint/lang/wgsl/ast/clone_context.h" //! @cond Doxygen_Suppress -// Doxygen gets confused with tint::ast::Extension and tint::core::Extension +// Doxygen gets confused with tint::ast::Extension and tint::wgsl::Extension TINT_INSTANTIATE_TYPEINFO(tint::ast::Extension); namespace tint::ast { -Extension::Extension(GenerationID pid, NodeID nid, const Source& src, core::Extension ext) +Extension::Extension(GenerationID pid, NodeID nid, const Source& src, wgsl::Extension ext) : Base(pid, nid, src), name(ext) {} Extension::~Extension() = default;
diff --git a/src/tint/lang/wgsl/ast/extension.h b/src/tint/lang/wgsl/ast/extension.h index 85e14bc..fa4566b 100644 --- a/src/tint/lang/wgsl/ast/extension.h +++ b/src/tint/lang/wgsl/ast/extension.h
@@ -15,8 +15,8 @@ #ifndef SRC_TINT_LANG_WGSL_AST_EXTENSION_H_ #define SRC_TINT_LANG_WGSL_AST_EXTENSION_H_ -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/wgsl/ast/node.h" +#include "src/tint/lang/wgsl/extension.h" namespace tint::ast { @@ -31,7 +31,7 @@ /// @param nid the unique node identifier /// @param src the source of this node /// @param ext the extension - Extension(GenerationID pid, NodeID nid, const Source& src, core::Extension ext); + Extension(GenerationID pid, NodeID nid, const Source& src, wgsl::Extension ext); /// Destructor ~Extension() override; @@ -43,7 +43,7 @@ const Extension* Clone(CloneContext& ctx) const override; /// The extension name - const core::Extension name; + const wgsl::Extension name; }; } // namespace tint::ast
diff --git a/src/tint/lang/wgsl/ast/for_loop_statement_test.cc b/src/tint/lang/wgsl/ast/for_loop_statement_test.cc index b1ae242..33841ac 100644 --- a/src/tint/lang/wgsl/ast/for_loop_statement_test.cc +++ b/src/tint/lang/wgsl/ast/for_loop_statement_test.cc
@@ -52,8 +52,8 @@ } TEST_F(ForLoopStatementTest, Creation_WithAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* body = Block(Return()); auto* l = For(nullptr, nullptr, nullptr, body, tint::Vector{attr1, attr2});
diff --git a/src/tint/lang/wgsl/ast/if_statement_test.cc b/src/tint/lang/wgsl/ast/if_statement_test.cc index e2bd7b8..827decc 100644 --- a/src/tint/lang/wgsl/ast/if_statement_test.cc +++ b/src/tint/lang/wgsl/ast/if_statement_test.cc
@@ -33,8 +33,8 @@ } TEST_F(IfStatementTest, Creation_WithAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* cond = Expr("cond"); auto* stmt = If(cond, Block(), ElseStmt(), tint::Vector{attr1, attr2});
diff --git a/src/tint/lang/wgsl/ast/loop_statement_test.cc b/src/tint/lang/wgsl/ast/loop_statement_test.cc index 5d75e68..bcab559 100644 --- a/src/tint/lang/wgsl/ast/loop_statement_test.cc +++ b/src/tint/lang/wgsl/ast/loop_statement_test.cc
@@ -50,8 +50,8 @@ } TEST_F(LoopStatementTest, Creation_WithAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* body = Block(Return()); auto* l = create<LoopStatement>(body, nullptr, tint::Vector{attr1, attr2});
diff --git a/src/tint/lang/wgsl/ast/module_test.cc b/src/tint/lang/wgsl/ast/module_test.cc index 37da59f..56ce163 100644 --- a/src/tint/lang/wgsl/ast/module_test.cc +++ b/src/tint/lang/wgsl/ast/module_test.cc
@@ -132,10 +132,10 @@ } TEST_F(ModuleTest, Directives) { - auto* enable_1 = Enable(core::Extension::kF16); - auto* diagnostic_1 = DiagnosticDirective(core::DiagnosticSeverity::kWarning, "foo"); - auto* enable_2 = Enable(core::Extension::kChromiumExperimentalFullPtrParameters); - auto* diagnostic_2 = DiagnosticDirective(core::DiagnosticSeverity::kOff, "bar"); + auto* enable_1 = Enable(wgsl::Extension::kF16); + auto* diagnostic_1 = DiagnosticDirective(wgsl::DiagnosticSeverity::kWarning, "foo"); + auto* enable_2 = Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); + auto* diagnostic_2 = DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, "bar"); Program program(std::move(*this)); EXPECT_THAT(program.AST().GlobalDeclarations(), ::testing::ContainerEq(tint::Vector{
diff --git a/src/tint/lang/wgsl/ast/switch_statement_test.cc b/src/tint/lang/wgsl/ast/switch_statement_test.cc index c1a4d01..242cb1b 100644 --- a/src/tint/lang/wgsl/ast/switch_statement_test.cc +++ b/src/tint/lang/wgsl/ast/switch_statement_test.cc
@@ -46,8 +46,8 @@ } TEST_F(SwitchStatementTest, Creation_WithAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* ident = Expr("ident"); auto* stmt = create<SwitchStatement>(ident, tint::Empty, tint::Vector{attr1, attr2}, tint::Empty); @@ -56,8 +56,8 @@ } TEST_F(SwitchStatementTest, Creation_WithBodyAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* ident = Expr("ident"); auto* stmt = create<SwitchStatement>(ident, tint::Empty, tint::Empty, tint::Vector{attr1, attr2});
diff --git a/src/tint/lang/wgsl/ast/transform/BUILD.bazel b/src/tint/lang/wgsl/ast/transform/BUILD.bazel index d035628..6b75460 100644 --- a/src/tint/lang/wgsl/ast/transform/BUILD.bazel +++ b/src/tint/lang/wgsl/ast/transform/BUILD.bazel
@@ -99,6 +99,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver", @@ -166,6 +167,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast:test",
diff --git a/src/tint/lang/wgsl/ast/transform/BUILD.cmake b/src/tint/lang/wgsl/ast/transform/BUILD.cmake index c5ed810..a9dd202 100644 --- a/src/tint/lang/wgsl/ast/transform/BUILD.cmake +++ b/src/tint/lang/wgsl/ast/transform/BUILD.cmake
@@ -98,6 +98,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver @@ -165,6 +166,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_test
diff --git a/src/tint/lang/wgsl/ast/transform/BUILD.gn b/src/tint/lang/wgsl/ast/transform/BUILD.gn index 3c49f99..22706b8 100644 --- a/src/tint/lang/wgsl/ast/transform/BUILD.gn +++ b/src/tint/lang/wgsl/ast/transform/BUILD.gn
@@ -102,6 +102,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver", @@ -168,6 +169,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/ast/transform",
diff --git a/src/tint/lang/wgsl/ast/transform/builtin_polyfill.cc b/src/tint/lang/wgsl/ast/transform/builtin_polyfill.cc index 876f7fb..dc4ba14 100644 --- a/src/tint/lang/wgsl/ast/transform/builtin_polyfill.cc +++ b/src/tint/lang/wgsl/ast/transform/builtin_polyfill.cc
@@ -51,7 +51,7 @@ State(const Program* program, const Config& config) : src(program), cfg(config) { has_full_ptr_params = false; for (auto* enable : src->AST().Enables()) { - if (enable->HasExtension(core::Extension::kChromiumExperimentalFullPtrParameters)) { + if (enable->HasExtension(wgsl::Extension::kChromiumExperimentalFullPtrParameters)) { has_full_ptr_params = true; break; } @@ -811,7 +811,7 @@ /// @return the polyfill function name Symbol workgroupUniformLoad(const core::type::Type* type) { if (!has_full_ptr_params) { - b.Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + b.Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); has_full_ptr_params = true; } auto name = b.Symbols().New("tint_workgroupUniformLoad");
diff --git a/src/tint/lang/wgsl/ast/transform/direct_variable_access.cc b/src/tint/lang/wgsl/ast/transform/direct_variable_access.cc index 30dbbb7..28db994 100644 --- a/src/tint/lang/wgsl/ast/transform/direct_variable_access.cc +++ b/src/tint/lang/wgsl/ast/transform/direct_variable_access.cc
@@ -208,7 +208,7 @@ /// @returns the ApplyResult ApplyResult Run() { if (!ctx.src->Sem().Module()->Extensions().Contains( - core::Extension::kChromiumExperimentalFullPtrParameters)) { + wgsl::Extension::kChromiumExperimentalFullPtrParameters)) { // If the 'chromium_experimental_full_ptr_parameters' extension is not enabled, then // there's nothing for this transform to do. return SkipTransform;
diff --git a/src/tint/lang/wgsl/ast/transform/disable_uniformity_analysis.cc b/src/tint/lang/wgsl/ast/transform/disable_uniformity_analysis.cc index 3c23390..34d212b 100644 --- a/src/tint/lang/wgsl/ast/transform/disable_uniformity_analysis.cc +++ b/src/tint/lang/wgsl/ast/transform/disable_uniformity_analysis.cc
@@ -33,13 +33,13 @@ const DataMap&, DataMap&) const { if (src->Sem().Module()->Extensions().Contains( - core::Extension::kChromiumDisableUniformityAnalysis)) { + wgsl::Extension::kChromiumDisableUniformityAnalysis)) { return SkipTransform; } ProgramBuilder b; program::CloneContext ctx{&b, src, /* auto_clone_symbols */ true}; - b.Enable(core::Extension::kChromiumDisableUniformityAnalysis); + b.Enable(wgsl::Extension::kChromiumDisableUniformityAnalysis); ctx.Clone(); return resolver::Resolve(b);
diff --git a/src/tint/lang/wgsl/ast/transform/preserve_padding.cc b/src/tint/lang/wgsl/ast/transform/preserve_padding.cc index 3ef5d69..25cba78 100644 --- a/src/tint/lang/wgsl/ast/transform/preserve_padding.cc +++ b/src/tint/lang/wgsl/ast/transform/preserve_padding.cc
@@ -71,7 +71,7 @@ [&](const Enable* enable) { // Check if the full pointer parameters extension is already enabled. if (enable->HasExtension( - core::Extension::kChromiumExperimentalFullPtrParameters)) { + wgsl::Extension::kChromiumExperimentalFullPtrParameters)) { ext_enabled = true; } }); @@ -220,7 +220,7 @@ /// Enable the full pointer parameters extension, if we have not already done so. void EnableExtension() { if (!ext_enabled) { - b.Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + b.Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); ext_enabled = true; } }
diff --git a/src/tint/lang/wgsl/ast/while_statement_test.cc b/src/tint/lang/wgsl/ast/while_statement_test.cc index 43c2093..d87ddf0 100644 --- a/src/tint/lang/wgsl/ast/while_statement_test.cc +++ b/src/tint/lang/wgsl/ast/while_statement_test.cc
@@ -43,8 +43,8 @@ } TEST_F(WhileStatementTest, Creation_WithAttributes) { - auto* attr1 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "foo"); - auto* attr2 = DiagnosticAttribute(core::DiagnosticSeverity::kOff, "bar"); + auto* attr1 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "foo"); + auto* attr2 = DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "bar"); auto* cond = create<BinaryExpression>(core::BinaryOp::kLessThan, Expr("i"), Expr(5_u)); auto* body = Block(Return()); auto* l = While(cond, body, tint::Vector{attr1, attr2});
diff --git a/src/tint/lang/core/diagnostic_rule.cc b/src/tint/lang/wgsl/diagnostic_rule.cc similarity index 94% rename from src/tint/lang/core/diagnostic_rule.cc rename to src/tint/lang/wgsl/diagnostic_rule.cc index b226240..624b2c1 100644 --- a/src/tint/lang/core/diagnostic_rule.cc +++ b/src/tint/lang/wgsl/diagnostic_rule.cc
@@ -14,20 +14,20 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_rule.cc.tmpl +// src/tint/lang/wgsl/diagnostic_rule.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include <string> #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { /// ParseCoreDiagnosticRule parses a CoreDiagnosticRule from a string. /// @param str the string to parse @@ -70,4 +70,4 @@ return "<unknown>"; } -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_rule.cc.tmpl b/src/tint/lang/wgsl/diagnostic_rule.cc.tmpl similarity index 82% rename from src/tint/lang/core/diagnostic_rule.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_rule.cc.tmpl index fdde9ab..9162120 100644 --- a/src/tint/lang/core/diagnostic_rule.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_rule.cc.tmpl
@@ -8,16 +8,16 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include <string> #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { {{ Eval "ParseEnum" ($I.Sem.Enum "core_diagnostic_rule")}} @@ -27,4 +27,4 @@ {{ Eval "EnumOStream" ($I.Sem.Enum "chromium_diagnostic_rule")}} -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_rule.h b/src/tint/lang/wgsl/diagnostic_rule.h similarity index 92% rename from src/tint/lang/core/diagnostic_rule.h rename to src/tint/lang/wgsl/diagnostic_rule.h index 0bc5f72..e0a71fe 100644 --- a/src/tint/lang/core/diagnostic_rule.h +++ b/src/tint/lang/wgsl/diagnostic_rule.h
@@ -14,15 +14,15 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_rule.h.tmpl +// src/tint/lang/wgsl/diagnostic_rule.h.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#ifndef SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ -#define SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ +#ifndef SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_ +#define SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_ #include <cstdint> #include <string> @@ -30,7 +30,7 @@ #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { /// WGSL core diagnostic rules. enum class CoreDiagnosticRule : uint8_t { @@ -90,6 +90,6 @@ /// All diagnostic rules understood by Tint. using DiagnosticRule = std::variant<CoreDiagnosticRule, ChromiumDiagnosticRule>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ +#endif // SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_
diff --git a/src/tint/lang/core/diagnostic_rule.h.tmpl b/src/tint/lang/wgsl/diagnostic_rule.h.tmpl similarity index 77% rename from src/tint/lang/core/diagnostic_rule.h.tmpl rename to src/tint/lang/wgsl/diagnostic_rule.h.tmpl index 8bf1f0d..9948d1c 100644 --- a/src/tint/lang/core/diagnostic_rule.h.tmpl +++ b/src/tint/lang/wgsl/diagnostic_rule.h.tmpl
@@ -8,11 +8,11 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#ifndef SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ -#define SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ +#ifndef SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_ +#define SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_ #include <cstdint> #include <string> @@ -20,7 +20,7 @@ #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { /// WGSL core diagnostic rules. {{ Eval "DeclareEnum" ($I.Sem.Enum "core_diagnostic_rule") }} @@ -31,6 +31,6 @@ /// All diagnostic rules understood by Tint. using DiagnosticRule = std::variant<CoreDiagnosticRule, ChromiumDiagnosticRule>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_DIAGNOSTIC_RULE_H_ +#endif // SRC_TINT_LANG_WGSL_DIAGNOSTIC_RULE_H_
diff --git a/src/tint/lang/core/diagnostic_rule_bench.cc b/src/tint/lang/wgsl/diagnostic_rule_bench.cc similarity index 92% rename from src/tint/lang/core/diagnostic_rule_bench.cc rename to src/tint/lang/wgsl/diagnostic_rule_bench.cc index 4393c23..178f213 100644 --- a/src/tint/lang/core/diagnostic_rule_bench.cc +++ b/src/tint/lang/wgsl/diagnostic_rule_bench.cc
@@ -14,20 +14,20 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_rule_bench.cc.tmpl +// src/tint/lang/wgsl/diagnostic_rule_bench.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { void CoreDiagnosticRuleParser(::benchmark::State& state) { @@ -62,4 +62,4 @@ BENCHMARK(ChromiumDiagnosticRuleParser); } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_rule_bench.cc.tmpl b/src/tint/lang/wgsl/diagnostic_rule_bench.cc.tmpl similarity index 81% rename from src/tint/lang/core/diagnostic_rule_bench.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_rule_bench.cc.tmpl index 4813af5..cf1b20f 100644 --- a/src/tint/lang/core/diagnostic_rule_bench.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_rule_bench.cc.tmpl
@@ -8,16 +8,16 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { {{ Eval "BenchmarkParseEnum" ($I.Sem.Enum "core_diagnostic_rule")}} @@ -25,4 +25,4 @@ {{ Eval "BenchmarkParseEnum" ($I.Sem.Enum "chromium_diagnostic_rule")}} } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_rule_test.cc b/src/tint/lang/wgsl/diagnostic_rule_test.cc similarity index 96% rename from src/tint/lang/core/diagnostic_rule_test.cc rename to src/tint/lang/wgsl/diagnostic_rule_test.cc index c20079c..5c5a393 100644 --- a/src/tint/lang/core/diagnostic_rule_test.cc +++ b/src/tint/lang/wgsl/diagnostic_rule_test.cc
@@ -14,7 +14,7 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_rule_test.cc.tmpl +// src/tint/lang/wgsl/diagnostic_rule_test.cc.tmpl // // To regenerate run: './tools/run gen' // @@ -24,10 +24,10 @@ #include <string> #include "gtest/gtest-spi.h" -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { namespace core_diagnostic_rule_tests { @@ -135,4 +135,4 @@ } // namespace chromium_diagnostic_rule_tests } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_rule_test.cc.tmpl b/src/tint/lang/wgsl/diagnostic_rule_test.cc.tmpl similarity index 84% rename from src/tint/lang/core/diagnostic_rule_test.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_rule_test.cc.tmpl index 40da435..d34cd75 100644 --- a/src/tint/lang/core/diagnostic_rule_test.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_rule_test.cc.tmpl
@@ -8,16 +8,16 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} #include <string> #include "gtest/gtest-spi.h" -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { namespace core_diagnostic_rule_tests { @@ -33,4 +33,4 @@ } // namespace chromium_diagnostic_rule_tests } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity.cc b/src/tint/lang/wgsl/diagnostic_severity.cc similarity index 93% rename from src/tint/lang/core/diagnostic_severity.cc rename to src/tint/lang/wgsl/diagnostic_severity.cc index 3cde694..ffb5480 100644 --- a/src/tint/lang/core/diagnostic_severity.cc +++ b/src/tint/lang/wgsl/diagnostic_severity.cc
@@ -14,18 +14,18 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_severity.cc.tmpl +// src/tint/lang/wgsl/diagnostic_severity.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include <string> -namespace tint::core { +namespace tint::wgsl { diag::Severity ToSeverity(DiagnosticSeverity sc) { switch (sc) { @@ -75,4 +75,4 @@ return "<unknown>"; } -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity.cc.tmpl b/src/tint/lang/wgsl/diagnostic_severity.cc.tmpl similarity index 85% rename from src/tint/lang/core/diagnostic_severity.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_severity.cc.tmpl index f14922a..fdc3a8d 100644 --- a/src/tint/lang/core/diagnostic_severity.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_severity.cc.tmpl
@@ -8,14 +8,14 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include <string> -namespace tint::core { +namespace tint::wgsl { diag::Severity ToSeverity(DiagnosticSeverity sc) { switch (sc) { @@ -34,4 +34,4 @@ {{ Eval "EnumOStream" ($I.Sem.Enum "diagnostic_severity")}} -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity.h b/src/tint/lang/wgsl/diagnostic_severity.h similarity index 88% rename from src/tint/lang/core/diagnostic_severity.h rename to src/tint/lang/wgsl/diagnostic_severity.h index 9a7bd91..a09d2ab 100644 --- a/src/tint/lang/core/diagnostic_severity.h +++ b/src/tint/lang/wgsl/diagnostic_severity.h
@@ -14,24 +14,24 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_severity.h.tmpl +// src/tint/lang/wgsl/diagnostic_severity.h.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#ifndef SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ -#define SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ +#ifndef SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_ +#define SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_ #include <string> #include <unordered_map> -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include "src/tint/utils/diagnostic/diagnostic.h" #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { /// The diagnostic severity control. enum class DiagnosticSeverity : uint8_t { @@ -72,6 +72,6 @@ /// DiagnosticRuleSeverities is a map from diagnostic rule to diagnostic severity. using DiagnosticRuleSeverities = std::unordered_map<DiagnosticRule, DiagnosticSeverity>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ +#endif // SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_
diff --git a/src/tint/lang/core/diagnostic_severity.h.tmpl b/src/tint/lang/wgsl/diagnostic_severity.h.tmpl similarity index 76% rename from src/tint/lang/core/diagnostic_severity.h.tmpl rename to src/tint/lang/wgsl/diagnostic_severity.h.tmpl index fbabfaf..045591f 100644 --- a/src/tint/lang/core/diagnostic_severity.h.tmpl +++ b/src/tint/lang/wgsl/diagnostic_severity.h.tmpl
@@ -8,20 +8,20 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#ifndef SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ -#define SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ +#ifndef SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_ +#define SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_ #include <string> #include <unordered_map> #include "src/tint/utils/traits/traits.h" -#include "src/tint/lang/core/diagnostic_rule.h" +#include "src/tint/lang/wgsl/diagnostic_rule.h" #include "src/tint/utils/diagnostic/diagnostic.h" -namespace tint::core { +namespace tint::wgsl { /// The diagnostic severity control. {{ Eval "DeclareEnum" ($I.Sem.Enum "diagnostic_severity") }} @@ -32,6 +32,6 @@ /// DiagnosticRuleSeverities is a map from diagnostic rule to diagnostic severity. using DiagnosticRuleSeverities = std::unordered_map<DiagnosticRule, DiagnosticSeverity>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_DIAGNOSTIC_SEVERITY_H_ +#endif // SRC_TINT_LANG_WGSL_DIAGNOSTIC_SEVERITY_H_
diff --git a/src/tint/lang/core/diagnostic_severity_bench.cc b/src/tint/lang/wgsl/diagnostic_severity_bench.cc similarity index 91% rename from src/tint/lang/core/diagnostic_severity_bench.cc rename to src/tint/lang/wgsl/diagnostic_severity_bench.cc index 50a4f11..52e5736 100644 --- a/src/tint/lang/core/diagnostic_severity_bench.cc +++ b/src/tint/lang/wgsl/diagnostic_severity_bench.cc
@@ -14,20 +14,20 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_severity_bench.cc.tmpl +// src/tint/lang/wgsl/diagnostic_severity_bench.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { void DiagnosticSeverityParser(::benchmark::State& state) { @@ -48,4 +48,4 @@ BENCHMARK(DiagnosticSeverityParser); } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity_bench.cc.tmpl b/src/tint/lang/wgsl/diagnostic_severity_bench.cc.tmpl similarity index 79% rename from src/tint/lang/core/diagnostic_severity_bench.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_severity_bench.cc.tmpl index 9bbb401..a925938 100644 --- a/src/tint/lang/core/diagnostic_severity_bench.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_severity_bench.cc.tmpl
@@ -8,19 +8,19 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { {{ Eval "BenchmarkParseEnum" ($I.Sem.Enum "diagnostic_severity")}} } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity_test.cc b/src/tint/lang/wgsl/diagnostic_severity_test.cc similarity index 94% rename from src/tint/lang/core/diagnostic_severity_test.cc rename to src/tint/lang/wgsl/diagnostic_severity_test.cc index 78c1d75..960569f 100644 --- a/src/tint/lang/core/diagnostic_severity_test.cc +++ b/src/tint/lang/wgsl/diagnostic_severity_test.cc
@@ -14,7 +14,7 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/diagnostic_severity_test.cc.tmpl +// src/tint/lang/wgsl/diagnostic_severity_test.cc.tmpl // // To regenerate run: './tools/run gen' // @@ -24,10 +24,10 @@ #include <string> #include "gtest/gtest-spi.h" -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { namespace diagnostic_severity_tests { @@ -87,4 +87,4 @@ } // namespace diagnostic_severity_tests } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/diagnostic_severity_test.cc.tmpl b/src/tint/lang/wgsl/diagnostic_severity_test.cc.tmpl similarity index 81% rename from src/tint/lang/core/diagnostic_severity_test.cc.tmpl rename to src/tint/lang/wgsl/diagnostic_severity_test.cc.tmpl index e2db82e..48a7542 100644 --- a/src/tint/lang/core/diagnostic_severity_test.cc.tmpl +++ b/src/tint/lang/wgsl/diagnostic_severity_test.cc.tmpl
@@ -8,16 +8,16 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} #include <string> #include "gtest/gtest-spi.h" -#include "src/tint/lang/core/diagnostic_severity.h" +#include "src/tint/lang/wgsl/diagnostic_severity.h" #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { namespace diagnostic_severity_tests { @@ -27,4 +27,4 @@ } // namespace diagnostic_severity_tests } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension.cc b/src/tint/lang/wgsl/extension.cc similarity index 96% rename from src/tint/lang/core/extension.cc rename to src/tint/lang/wgsl/extension.cc index 102d612..96598a7 100644 --- a/src/tint/lang/core/extension.cc +++ b/src/tint/lang/wgsl/extension.cc
@@ -14,16 +14,16 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/extension.cc.tmpl +// src/tint/lang/wgsl/extension.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" -namespace tint::core { +namespace tint::wgsl { /// ParseExtension parses a Extension from a string. /// @param str the string to parse @@ -90,4 +90,4 @@ return "<unknown>"; } -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension.cc.tmpl b/src/tint/lang/wgsl/extension.cc.tmpl similarity index 78% rename from src/tint/lang/core/extension.cc.tmpl rename to src/tint/lang/wgsl/extension.cc.tmpl index 37c9e1b..cbe975b 100644 --- a/src/tint/lang/core/extension.cc.tmpl +++ b/src/tint/lang/wgsl/extension.cc.tmpl
@@ -8,16 +8,16 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} {{- $enum := ($I.Sem.Enum "extension") -}} -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" -namespace tint::core { +namespace tint::wgsl { {{ Eval "ParseEnum" $enum}} {{ Eval "EnumOStream" $enum}} -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension.h b/src/tint/lang/wgsl/extension.h similarity index 92% rename from src/tint/lang/core/extension.h rename to src/tint/lang/wgsl/extension.h index 7672ee0..0f401c9 100644 --- a/src/tint/lang/core/extension.h +++ b/src/tint/lang/wgsl/extension.h
@@ -14,20 +14,20 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/extension.h.tmpl +// src/tint/lang/wgsl/extension.h.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#ifndef SRC_TINT_LANG_CORE_EXTENSION_H_ -#define SRC_TINT_LANG_CORE_EXTENSION_H_ +#ifndef SRC_TINT_LANG_WGSL_EXTENSION_H_ +#define SRC_TINT_LANG_WGSL_EXTENSION_H_ #include "src/tint/utils/containers/unique_vector.h" #include "src/tint/utils/traits/traits.h" -namespace tint::core { +namespace tint::wgsl { /// An enumerator of WGSL extensions /// @see src/tint/lang/wgsl/intrinsics.def for extension descriptions @@ -73,6 +73,6 @@ // A unique vector of extensions using Extensions = UniqueVector<Extension, 4>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_EXTENSION_H_ +#endif // SRC_TINT_LANG_WGSL_EXTENSION_H_
diff --git a/src/tint/lang/core/extension.h.tmpl b/src/tint/lang/wgsl/extension.h.tmpl similarity index 77% rename from src/tint/lang/core/extension.h.tmpl rename to src/tint/lang/wgsl/extension.h.tmpl index 0637395..1c69ee1 100644 --- a/src/tint/lang/core/extension.h.tmpl +++ b/src/tint/lang/wgsl/extension.h.tmpl
@@ -8,17 +8,17 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} {{- $enum := ($I.Sem.Enum "extension") -}} -#ifndef SRC_TINT_LANG_CORE_EXTENSION_H_ -#define SRC_TINT_LANG_CORE_EXTENSION_H_ +#ifndef SRC_TINT_LANG_WGSL_EXTENSION_H_ +#define SRC_TINT_LANG_WGSL_EXTENSION_H_ #include "src/tint/utils/traits/traits.h" #include "src/tint/utils/containers/unique_vector.h" -namespace tint::core { +namespace tint::wgsl { /// An enumerator of WGSL extensions /// @see src/tint/lang/wgsl/intrinsics.def for extension descriptions @@ -27,6 +27,6 @@ // A unique vector of extensions using Extensions = UniqueVector<Extension, 4>; -} // namespace tint::core +} // namespace tint::wgsl -#endif // SRC_TINT_LANG_CORE_EXTENSION_H_ +#endif // SRC_TINT_LANG_WGSL_EXTENSION_H_
diff --git a/src/tint/lang/core/extension_bench.cc b/src/tint/lang/wgsl/extension_bench.cc similarity index 96% rename from src/tint/lang/core/extension_bench.cc rename to src/tint/lang/wgsl/extension_bench.cc index b0602c7..50d3ea9 100644 --- a/src/tint/lang/core/extension_bench.cc +++ b/src/tint/lang/wgsl/extension_bench.cc
@@ -14,20 +14,20 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/extension_bench.cc.tmpl +// src/tint/lang/wgsl/extension_bench.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { void ExtensionParser(::benchmark::State& state) { @@ -114,4 +114,4 @@ BENCHMARK(ExtensionParser); } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension_bench.cc.tmpl b/src/tint/lang/wgsl/extension_bench.cc.tmpl similarity index 80% rename from src/tint/lang/core/extension_bench.cc.tmpl rename to src/tint/lang/wgsl/extension_bench.cc.tmpl index eeff261..7fc8c5c 100644 --- a/src/tint/lang/core/extension_bench.cc.tmpl +++ b/src/tint/lang/wgsl/extension_bench.cc.tmpl
@@ -8,20 +8,20 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} {{- $enum := ($I.Sem.Enum "extension") -}} -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" #include <array> #include "benchmark/benchmark.h" -namespace tint::core { +namespace tint::wgsl { namespace { {{ Eval "BenchmarkParseEnum" $enum }} } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension_test.cc b/src/tint/lang/wgsl/extension_test.cc similarity index 96% rename from src/tint/lang/core/extension_test.cc rename to src/tint/lang/wgsl/extension_test.cc index 32149f6..d46393d 100644 --- a/src/tint/lang/core/extension_test.cc +++ b/src/tint/lang/wgsl/extension_test.cc
@@ -14,14 +14,14 @@ //////////////////////////////////////////////////////////////////////////////// // File generated by 'tools/src/cmd/gen' using the template: -// src/tint/lang/core/extension_test.cc.tmpl +// src/tint/lang/wgsl/extension_test.cc.tmpl // // To regenerate run: './tools/run gen' // // Do not modify this file directly //////////////////////////////////////////////////////////////////////////////// -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" #include <gtest/gtest.h> @@ -29,7 +29,7 @@ #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { namespace parse_print_tests { @@ -115,4 +115,4 @@ } // namespace parse_print_tests } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/core/extension_test.cc.tmpl b/src/tint/lang/wgsl/extension_test.cc.tmpl similarity index 81% rename from src/tint/lang/core/extension_test.cc.tmpl rename to src/tint/lang/wgsl/extension_test.cc.tmpl index b993082..0e6d498 100644 --- a/src/tint/lang/core/extension_test.cc.tmpl +++ b/src/tint/lang/wgsl/extension_test.cc.tmpl
@@ -8,11 +8,11 @@ -------------------------------------------------------------------------------- */ -}} -{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} +{{- $I := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}} {{- Import "src/tint/utils/templates/enums.tmpl.inc" -}} {{- $enum := ($I.Sem.Enum "extension") -}} -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" #include <gtest/gtest.h> @@ -20,10 +20,10 @@ #include "src/tint/utils/text/string.h" -namespace tint::core { +namespace tint::wgsl { namespace { {{ Eval "TestParsePrintEnum" $enum}} } // namespace -} // namespace tint::core +} // namespace tint::wgsl
diff --git a/src/tint/lang/wgsl/helpers/BUILD.bazel b/src/tint/lang/wgsl/helpers/BUILD.bazel index 3dada81..c9687b0 100644 --- a/src/tint/lang/wgsl/helpers/BUILD.bazel +++ b/src/tint/lang/wgsl/helpers/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/inspector", @@ -78,6 +79,7 @@ "//src/tint/lang/core/intrinsic", "//src/tint/lang/core/ir", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast:test", "//src/tint/lang/wgsl/helpers",
diff --git a/src/tint/lang/wgsl/helpers/BUILD.cmake b/src/tint/lang/wgsl/helpers/BUILD.cmake index 085c869..8cf2e47 100644 --- a/src/tint/lang/wgsl/helpers/BUILD.cmake +++ b/src/tint/lang/wgsl/helpers/BUILD.cmake
@@ -39,6 +39,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_inspector @@ -77,6 +78,7 @@ tint_lang_core_intrinsic tint_lang_core_ir tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_test tint_lang_wgsl_helpers
diff --git a/src/tint/lang/wgsl/helpers/BUILD.gn b/src/tint/lang/wgsl/helpers/BUILD.gn index b676822..be773f2 100644 --- a/src/tint/lang/wgsl/helpers/BUILD.gn +++ b/src/tint/lang/wgsl/helpers/BUILD.gn
@@ -43,6 +43,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast/transform", "${tint_src_dir}/lang/wgsl/inspector", @@ -80,6 +81,7 @@ "${tint_src_dir}/lang/core/intrinsic", "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/helpers",
diff --git a/src/tint/lang/wgsl/helpers/check_supported_extensions.cc b/src/tint/lang/wgsl/helpers/check_supported_extensions.cc index 4e9c329..ece9b37 100644 --- a/src/tint/lang/wgsl/helpers/check_supported_extensions.cc +++ b/src/tint/lang/wgsl/helpers/check_supported_extensions.cc
@@ -26,8 +26,8 @@ bool CheckSupportedExtensions(std::string_view writer_name, const ast::Module& module, diag::List& diags, - VectorRef<core::Extension> supported) { - Hashset<core::Extension, 32> set; + VectorRef<wgsl::Extension> supported) { + Hashset<wgsl::Extension, 32> set; for (auto ext : supported) { set.Add(ext); }
diff --git a/src/tint/lang/wgsl/helpers/check_supported_extensions.h b/src/tint/lang/wgsl/helpers/check_supported_extensions.h index e9642dd..b2f09f3 100644 --- a/src/tint/lang/wgsl/helpers/check_supported_extensions.h +++ b/src/tint/lang/wgsl/helpers/check_supported_extensions.h
@@ -15,7 +15,7 @@ #ifndef SRC_TINT_LANG_WGSL_HELPERS_CHECK_SUPPORTED_EXTENSIONS_H_ #define SRC_TINT_LANG_WGSL_HELPERS_CHECK_SUPPORTED_EXTENSIONS_H_ -#include "src/tint/lang/core/extension.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/utils/containers/vector.h" namespace tint::ast { @@ -36,7 +36,7 @@ bool CheckSupportedExtensions(std::string_view writer_name, const ast::Module& module, diag::List& diags, - VectorRef<core::Extension> supported); + VectorRef<wgsl::Extension> supported); } // namespace tint::writer
diff --git a/src/tint/lang/wgsl/helpers/check_supported_extensions_test.cc b/src/tint/lang/wgsl/helpers/check_supported_extensions_test.cc index 29f4c9f..0d90851 100644 --- a/src/tint/lang/wgsl/helpers/check_supported_extensions_test.cc +++ b/src/tint/lang/wgsl/helpers/check_supported_extensions_test.cc
@@ -24,21 +24,21 @@ class CheckSupportedExtensionsTest : public ::testing::Test, public ProgramBuilder {}; TEST_F(CheckSupportedExtensionsTest, Supported) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ASSERT_TRUE(CheckSupportedExtensions("writer", AST(), Diagnostics(), Vector{ - core::Extension::kF16, - core::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kF16, + wgsl::Extension::kChromiumExperimentalDp4A, })); } TEST_F(CheckSupportedExtensionsTest, Unsupported) { - Enable(Source{{12, 34}}, core::Extension::kF16); + Enable(Source{{12, 34}}, wgsl::Extension::kF16); ASSERT_FALSE(CheckSupportedExtensions("writer", AST(), Diagnostics(), Vector{ - core::Extension::kChromiumExperimentalDp4A, + wgsl::Extension::kChromiumExperimentalDp4A, })); EXPECT_EQ(Diagnostics().str(), "12:34 error: writer backend does not support extension 'f16'"); }
diff --git a/src/tint/lang/wgsl/inspector/BUILD.bazel b/src/tint/lang/wgsl/inspector/BUILD.bazel index 79a0b76..86f9897 100644 --- a/src/tint/lang/wgsl/inspector/BUILD.bazel +++ b/src/tint/lang/wgsl/inspector/BUILD.bazel
@@ -42,6 +42,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -77,6 +78,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/inspector", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/inspector/BUILD.cmake b/src/tint/lang/wgsl/inspector/BUILD.cmake index e5b36a0..5c0e910 100644 --- a/src/tint/lang/wgsl/inspector/BUILD.cmake +++ b/src/tint/lang/wgsl/inspector/BUILD.cmake
@@ -41,6 +41,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -76,6 +77,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_inspector tint_lang_wgsl_program
diff --git a/src/tint/lang/wgsl/inspector/BUILD.gn b/src/tint/lang/wgsl/inspector/BUILD.gn index 5fea9d0..00feb25 100644 --- a/src/tint/lang/wgsl/inspector/BUILD.gn +++ b/src/tint/lang/wgsl/inspector/BUILD.gn
@@ -45,6 +45,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem", @@ -79,6 +80,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/inspector", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/inspector/inspector.cc b/src/tint/lang/wgsl/inspector/inspector.cc index 7688ece..48cc3b7 100644 --- a/src/tint/lang/wgsl/inspector/inspector.cc +++ b/src/tint/lang/wgsl/inspector/inspector.cc
@@ -18,7 +18,6 @@ #include <utility> #include "src/tint/lang/core/builtin_value.h" -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/core/fluent_types.h" #include "src/tint/lang/core/interpolation_sampling.h" #include "src/tint/lang/core/interpolation_type.h" @@ -48,6 +47,7 @@ #include "src/tint/lang/wgsl/ast/module.h" #include "src/tint/lang/wgsl/ast/override.h" #include "src/tint/lang/wgsl/ast/var.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/lang/wgsl/sem/builtin_enum_expression.h" #include "src/tint/lang/wgsl/sem/call.h" #include "src/tint/lang/wgsl/sem/function.h"
diff --git a/src/tint/lang/wgsl/inspector/inspector_test.cc b/src/tint/lang/wgsl/inspector/inspector_test.cc index ad171bd..f2099b5 100644 --- a/src/tint/lang/wgsl/inspector/inspector_test.cc +++ b/src/tint/lang/wgsl/inspector/inspector_test.cc
@@ -402,7 +402,7 @@ std::function<ast::Type()> tint_type = GetTypeFunction(component, composition); if (component == ComponentType::kF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } auto* in_var = Param("in_var", tint_type(), @@ -1021,7 +1021,7 @@ } TEST_F(InspectorGetEntryPointTest, OverrideTypes) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Override("bool_var", ty.bool_()); Override("float_var", ty.f32()); @@ -1540,7 +1540,7 @@ // var<pixel_local> pls : Ure; // @fragment fn foo() { _ = pls; } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("Ure", Vector{ Member("toto", ty.u32()), Member("titi", ty.f32()), @@ -1777,7 +1777,7 @@ } TEST_F(InspectorGetOverrideDefaultValuesTest, F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Override("a", ty.f16(), Id(1_a)); Override("b", ty.f16(), Expr(0_h), Id(20_a)); @@ -3087,11 +3087,11 @@ expectedResourceType = ResourceBinding::ResourceType::kWriteOnlyStorageTexture; break; case core::Access::kRead: - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); expectedResourceType = ResourceBinding::ResourceType::kReadOnlyStorageTexture; break; case core::Access::kReadWrite: - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); expectedResourceType = ResourceBinding::ResourceType::kReadWriteStorageTexture; break; case core::Access::kUndefined:
diff --git a/src/tint/lang/wgsl/program/BUILD.bazel b/src/tint/lang/wgsl/program/BUILD.bazel index aefd945..1fcc0d5 100644 --- a/src/tint/lang/wgsl/program/BUILD.bazel +++ b/src/tint/lang/wgsl/program/BUILD.bazel
@@ -40,6 +40,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/sem", "//src/tint/utils/containers", @@ -72,6 +73,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast:test", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/program/BUILD.cmake b/src/tint/lang/wgsl/program/BUILD.cmake index bae5dda..05bfcdb 100644 --- a/src/tint/lang/wgsl/program/BUILD.cmake +++ b/src/tint/lang/wgsl/program/BUILD.cmake
@@ -39,6 +39,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_sem tint_utils_containers @@ -71,6 +72,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_test tint_lang_wgsl_program
diff --git a/src/tint/lang/wgsl/program/BUILD.gn b/src/tint/lang/wgsl/program/BUILD.gn index 784b43c..ea3bd1b 100644 --- a/src/tint/lang/wgsl/program/BUILD.gn +++ b/src/tint/lang/wgsl/program/BUILD.gn
@@ -43,6 +43,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/sem", "${tint_src_dir}/utils/containers", @@ -74,6 +75,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/program/program_builder.h b/src/tint/lang/wgsl/program/program_builder.h index 9daac97..81fdfc7 100644 --- a/src/tint/lang/wgsl/program/program_builder.h +++ b/src/tint/lang/wgsl/program/program_builder.h
@@ -22,7 +22,6 @@ #include "src/tint/api/common/override_id.h" #include "src/tint/lang/core/constant/manager.h" -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/core/fluent_types.h" #include "src/tint/lang/core/interpolation_sampling.h" #include "src/tint/lang/core/interpolation_type.h" @@ -45,6 +44,7 @@ #include "src/tint/lang/core/type/vector.h" #include "src/tint/lang/core/type/void.h" #include "src/tint/lang/wgsl/ast/builder.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/lang/wgsl/program/program.h" #include "src/tint/lang/wgsl/sem/array_count.h" #include "src/tint/lang/wgsl/sem/struct.h"
diff --git a/src/tint/lang/wgsl/reader/BUILD.bazel b/src/tint/lang/wgsl/reader/BUILD.bazel index 4e8ffe5..43922a8 100644 --- a/src/tint/lang/wgsl/reader/BUILD.bazel +++ b/src/tint/lang/wgsl/reader/BUILD.bazel
@@ -36,6 +36,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader/parser", @@ -68,6 +69,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/reader",
diff --git a/src/tint/lang/wgsl/reader/BUILD.cmake b/src/tint/lang/wgsl/reader/BUILD.cmake index 2c84e0b..9848c4b 100644 --- a/src/tint/lang/wgsl/reader/BUILD.cmake +++ b/src/tint/lang/wgsl/reader/BUILD.cmake
@@ -38,6 +38,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader_parser @@ -71,6 +72,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_reader
diff --git a/src/tint/lang/wgsl/reader/BUILD.gn b/src/tint/lang/wgsl/reader/BUILD.gn index e26cd97..7c450ca 100644 --- a/src/tint/lang/wgsl/reader/BUILD.gn +++ b/src/tint/lang/wgsl/reader/BUILD.gn
@@ -35,6 +35,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/reader/parser",
diff --git a/src/tint/lang/wgsl/reader/parser/BUILD.bazel b/src/tint/lang/wgsl/reader/parser/BUILD.bazel index fdb4446..d1d9b22 100644 --- a/src/tint/lang/wgsl/reader/parser/BUILD.bazel +++ b/src/tint/lang/wgsl/reader/parser/BUILD.bazel
@@ -43,6 +43,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver", @@ -142,6 +143,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast:test", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/reader/parser/BUILD.cmake b/src/tint/lang/wgsl/reader/parser/BUILD.cmake index e53c99c..453af11 100644 --- a/src/tint/lang/wgsl/reader/parser/BUILD.cmake +++ b/src/tint/lang/wgsl/reader/parser/BUILD.cmake
@@ -42,6 +42,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver @@ -141,6 +142,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_test tint_lang_wgsl_program
diff --git a/src/tint/lang/wgsl/reader/parser/BUILD.gn b/src/tint/lang/wgsl/reader/parser/BUILD.gn index 36c9f43..f765960 100644 --- a/src/tint/lang/wgsl/reader/parser/BUILD.gn +++ b/src/tint/lang/wgsl/reader/parser/BUILD.gn
@@ -46,6 +46,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver", @@ -144,6 +145,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/reader/parser/diagnostic_attribute_test.cc b/src/tint/lang/wgsl/reader/parser/diagnostic_attribute_test.cc index 120f5ac..88b1a20 100644 --- a/src/tint/lang/wgsl/reader/parser/diagnostic_attribute_test.cc +++ b/src/tint/lang/wgsl/reader/parser/diagnostic_attribute_test.cc
@@ -27,7 +27,7 @@ EXPECT_TRUE(a.matched); auto* d = a.value->As<ast::DiagnosticAttribute>(); ASSERT_NE(d, nullptr); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kOff); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kOff); auto* r = d->control.rule_name; ASSERT_NE(r, nullptr); EXPECT_EQ(r->category, nullptr); @@ -41,7 +41,7 @@ EXPECT_TRUE(a.matched); auto* d = a.value->As<ast::DiagnosticAttribute>(); ASSERT_NE(d, nullptr); - EXPECT_EQ(d->control.severity, core::DiagnosticSeverity::kOff); + EXPECT_EQ(d->control.severity, wgsl::DiagnosticSeverity::kOff); auto* r = d->control.rule_name; ASSERT_NE(r, nullptr); ast::CheckIdentifier(r->category, "foo");
diff --git a/src/tint/lang/wgsl/reader/parser/diagnostic_control_test.cc b/src/tint/lang/wgsl/reader/parser/diagnostic_control_test.cc index f89dfb5..4adeab6 100644 --- a/src/tint/lang/wgsl/reader/parser/diagnostic_control_test.cc +++ b/src/tint/lang/wgsl/reader/parser/diagnostic_control_test.cc
@@ -20,7 +20,7 @@ namespace tint::wgsl::reader { namespace { -using SeverityPair = std::pair<std::string, core::DiagnosticSeverity>; +using SeverityPair = std::pair<std::string, wgsl::DiagnosticSeverity>; class DiagnosticControlParserTest : public WGSLParserTestWithParam<SeverityPair> {}; TEST_P(DiagnosticControlParserTest, DiagnosticControl_Name) { @@ -51,18 +51,18 @@ } INSTANTIATE_TEST_SUITE_P(DiagnosticControlParserTest, DiagnosticControlParserTest, - testing::Values(SeverityPair{"error", core::DiagnosticSeverity::kError}, + testing::Values(SeverityPair{"error", wgsl::DiagnosticSeverity::kError}, SeverityPair{"warning", - core::DiagnosticSeverity::kWarning}, - SeverityPair{"info", core::DiagnosticSeverity::kInfo}, - SeverityPair{"off", core::DiagnosticSeverity::kOff})); + wgsl::DiagnosticSeverity::kWarning}, + SeverityPair{"info", wgsl::DiagnosticSeverity::kInfo}, + SeverityPair{"off", wgsl::DiagnosticSeverity::kOff})); TEST_F(WGSLParserTest, DiagnosticControl_Name_TrailingComma) { auto p = parser("(error, foo,)"); auto e = p->expect_diagnostic_control(); EXPECT_FALSE(e.errored); EXPECT_FALSE(p->has_error()) << p->error(); - EXPECT_EQ(e->severity, core::DiagnosticSeverity::kError); + EXPECT_EQ(e->severity, wgsl::DiagnosticSeverity::kError); auto* r = e->rule_name; ASSERT_NE(r, nullptr); @@ -75,7 +75,7 @@ auto e = p->expect_diagnostic_control(); EXPECT_FALSE(e.errored); EXPECT_FALSE(p->has_error()) << p->error(); - EXPECT_EQ(e->severity, core::DiagnosticSeverity::kError); + EXPECT_EQ(e->severity, wgsl::DiagnosticSeverity::kError); auto* r = e->rule_name; ASSERT_NE(r, nullptr);
diff --git a/src/tint/lang/wgsl/reader/parser/diagnostic_directive_test.cc b/src/tint/lang/wgsl/reader/parser/diagnostic_directive_test.cc index 0e10e4c..6ba4f8d 100644 --- a/src/tint/lang/wgsl/reader/parser/diagnostic_directive_test.cc +++ b/src/tint/lang/wgsl/reader/parser/diagnostic_directive_test.cc
@@ -27,7 +27,7 @@ auto& ast = p->builder().AST(); ASSERT_EQ(ast.DiagnosticDirectives().Length(), 1u); auto* directive = ast.DiagnosticDirectives()[0]; - EXPECT_EQ(directive->control.severity, core::DiagnosticSeverity::kOff); + EXPECT_EQ(directive->control.severity, wgsl::DiagnosticSeverity::kOff); ASSERT_EQ(ast.GlobalDeclarations().Length(), 1u); EXPECT_EQ(ast.GlobalDeclarations()[0], directive); @@ -44,7 +44,7 @@ auto& ast = p->builder().AST(); ASSERT_EQ(ast.DiagnosticDirectives().Length(), 1u); auto* directive = ast.DiagnosticDirectives()[0]; - EXPECT_EQ(directive->control.severity, core::DiagnosticSeverity::kOff); + EXPECT_EQ(directive->control.severity, wgsl::DiagnosticSeverity::kOff); ASSERT_EQ(ast.GlobalDeclarations().Length(), 1u); EXPECT_EQ(ast.GlobalDeclarations()[0], directive);
diff --git a/src/tint/lang/wgsl/reader/parser/enable_directive_test.cc b/src/tint/lang/wgsl/reader/parser/enable_directive_test.cc index 9f71c25..4897ab6 100644 --- a/src/tint/lang/wgsl/reader/parser/enable_directive_test.cc +++ b/src/tint/lang/wgsl/reader/parser/enable_directive_test.cc
@@ -35,7 +35,7 @@ EXPECT_EQ(enable->source.range.end.line, 1u); EXPECT_EQ(enable->source.range.end.column, 12u); ASSERT_EQ(enable->extensions.Length(), 1u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 1u); @@ -58,7 +58,7 @@ EXPECT_EQ(enable->source.range.end.line, 1u); EXPECT_EQ(enable->source.range.end.column, 14u); ASSERT_EQ(enable->extensions.Length(), 1u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 1u); @@ -78,17 +78,17 @@ ASSERT_EQ(ast.Enables().Length(), 1u); auto* enable = ast.Enables()[0]; ASSERT_EQ(enable->extensions.Length(), 3u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.end.column, 11u); - EXPECT_EQ(enable->extensions[1]->name, core::Extension::kChromiumDisableUniformityAnalysis); + EXPECT_EQ(enable->extensions[1]->name, wgsl::Extension::kChromiumDisableUniformityAnalysis); EXPECT_EQ(enable->extensions[1]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[1]->source.range.begin.column, 13u); EXPECT_EQ(enable->extensions[1]->source.range.end.line, 1u); EXPECT_EQ(enable->extensions[1]->source.range.end.column, 49u); - EXPECT_EQ(enable->extensions[2]->name, core::Extension::kChromiumExperimentalDp4A); + EXPECT_EQ(enable->extensions[2]->name, wgsl::Extension::kChromiumExperimentalDp4A); EXPECT_EQ(enable->extensions[2]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[2]->source.range.begin.column, 51u); EXPECT_EQ(enable->extensions[2]->source.range.end.line, 1u); @@ -108,17 +108,17 @@ ASSERT_EQ(ast.Enables().Length(), 1u); auto* enable = ast.Enables()[0]; ASSERT_EQ(enable->extensions.Length(), 3u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 1u); EXPECT_EQ(enable->extensions[0]->source.range.end.column, 11u); - EXPECT_EQ(enable->extensions[1]->name, core::Extension::kChromiumDisableUniformityAnalysis); + EXPECT_EQ(enable->extensions[1]->name, wgsl::Extension::kChromiumDisableUniformityAnalysis); EXPECT_EQ(enable->extensions[1]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[1]->source.range.begin.column, 13u); EXPECT_EQ(enable->extensions[1]->source.range.end.line, 1u); EXPECT_EQ(enable->extensions[1]->source.range.end.column, 49u); - EXPECT_EQ(enable->extensions[2]->name, core::Extension::kChromiumExperimentalDp4A); + EXPECT_EQ(enable->extensions[2]->name, wgsl::Extension::kChromiumExperimentalDp4A); EXPECT_EQ(enable->extensions[2]->source.range.begin.line, 1u); EXPECT_EQ(enable->extensions[2]->source.range.begin.column, 51u); EXPECT_EQ(enable->extensions[2]->source.range.end.line, 1u); @@ -141,13 +141,13 @@ auto* enable_a = ast.Enables()[0]; auto* enable_b = ast.Enables()[1]; ASSERT_EQ(enable_a->extensions.Length(), 1u); - EXPECT_EQ(enable_a->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable_a->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable_a->extensions[0]->source.range.begin.line, 2u); EXPECT_EQ(enable_a->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable_a->extensions[0]->source.range.end.line, 2u); EXPECT_EQ(enable_a->extensions[0]->source.range.end.column, 11u); ASSERT_EQ(enable_b->extensions.Length(), 1u); - EXPECT_EQ(enable_b->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable_b->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable_b->extensions[0]->source.range.begin.line, 3u); EXPECT_EQ(enable_b->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable_b->extensions[0]->source.range.end.line, 3u); @@ -272,7 +272,7 @@ ASSERT_EQ(ast.Enables().Length(), 1u); auto* enable = ast.Enables()[0]; ASSERT_EQ(enable->extensions.Length(), 1u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 3u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 3u); @@ -297,7 +297,7 @@ ASSERT_EQ(ast.Enables().Length(), 1u); auto* enable = ast.Enables()[0]; ASSERT_EQ(enable->extensions.Length(), 1u); - EXPECT_EQ(enable->extensions[0]->name, core::Extension::kF16); + EXPECT_EQ(enable->extensions[0]->name, wgsl::Extension::kF16); EXPECT_EQ(enable->extensions[0]->source.range.begin.line, 3u); EXPECT_EQ(enable->extensions[0]->source.range.begin.column, 8u); EXPECT_EQ(enable->extensions[0]->source.range.end.line, 3u);
diff --git a/src/tint/lang/wgsl/reader/parser/parser.cc b/src/tint/lang/wgsl/reader/parser/parser.cc index 3905e3e..49defa2 100644 --- a/src/tint/lang/wgsl/reader/parser/parser.cc +++ b/src/tint/lang/wgsl/reader/parser/parser.cc
@@ -416,7 +416,7 @@ Vector<const ast::Extension*, 4> extensions; while (continue_parsing()) { Source ext_src = peek().source(); - auto ext = expect_enum("extension", core::ParseExtension, core::kExtensionStrings); + auto ext = expect_enum("extension", wgsl::ParseExtension, wgsl::kExtensionStrings); if (ext.errored) { return Failure::kErrored; } @@ -3142,9 +3142,9 @@ // | 'warning' // | 'info' // | 'off' -Expect<core::DiagnosticSeverity> Parser::expect_severity_control_name() { - return expect_enum("severity control", core::ParseDiagnosticSeverity, - core::kDiagnosticSeverityStrings); +Expect<wgsl::DiagnosticSeverity> Parser::expect_severity_control_name() { + return expect_enum("severity control", wgsl::ParseDiagnosticSeverity, + wgsl::kDiagnosticSeverityStrings); } // diagnostic_control
diff --git a/src/tint/lang/wgsl/reader/parser/parser.h b/src/tint/lang/wgsl/reader/parser/parser.h index 4c3f2b4..f61d74b 100644 --- a/src/tint/lang/wgsl/reader/parser/parser.h +++ b/src/tint/lang/wgsl/reader/parser/parser.h
@@ -644,7 +644,7 @@ Expect<const ast::Attribute*> expect_attribute(); /// Parses a severity_control_name grammar element. /// @return the parsed severity control name. - Expect<core::DiagnosticSeverity> expect_severity_control_name(); + Expect<wgsl::DiagnosticSeverity> expect_severity_control_name(); /// Parses a diagnostic_control grammar element. /// @return the parsed diagnostic control. Expect<ast::DiagnosticControl> expect_diagnostic_control();
diff --git a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.bazel b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.bazel index b78023b..17ea099 100644 --- a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.bazel +++ b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core/intrinsic/data", "//src/tint/lang/core/ir", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -83,6 +84,7 @@ "//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/helpers:test", "//src/tint/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.cmake b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.cmake index ee5707d..39a7619 100644 --- a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.cmake +++ b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.cmake
@@ -38,6 +38,7 @@ tint_lang_core_intrinsic_data tint_lang_core_ir tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -82,6 +83,7 @@ tint_lang_core_constant tint_lang_core_ir tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_helpers_test tint_lang_wgsl_program
diff --git a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.gn b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.gn index 6b6d958..a2de875 100644 --- a/src/tint/lang/wgsl/reader/program_to_ir/BUILD.gn +++ b/src/tint/lang/wgsl/reader/program_to_ir/BUILD.gn
@@ -42,6 +42,7 @@ "${tint_src_dir}/lang/core/intrinsic/data", "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem", @@ -85,6 +86,7 @@ "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/helpers:unittests", "${tint_src_dir}/lang/wgsl/program",
diff --git a/src/tint/lang/wgsl/reader/program_to_ir/literal_test.cc b/src/tint/lang/wgsl/reader/program_to_ir/literal_test.cc index 688399c..52a5fa2 100644 --- a/src/tint/lang/wgsl/reader/program_to_ir/literal_test.cc +++ b/src/tint/lang/wgsl/reader/program_to_ir/literal_test.cc
@@ -143,7 +143,7 @@ } TEST_F(ProgramToIRLiteralTest, EmitLiteral_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Expr(1.2_h); GlobalVar("a", ty.f16(), core::AddressSpace::kPrivate, expr); @@ -158,7 +158,7 @@ } TEST_F(ProgramToIRLiteralTest, EmitLiteral_F16_Deduped) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.f16(), core::AddressSpace::kPrivate, Expr(1.2_h)); GlobalVar("b", ty.f16(), core::AddressSpace::kPrivate, Expr(1.25_h)); GlobalVar("c", ty.f16(), core::AddressSpace::kPrivate, Expr(1.2_h));
diff --git a/src/tint/lang/wgsl/resolver/BUILD.bazel b/src/tint/lang/wgsl/resolver/BUILD.bazel index d9cf277..ffcbc6c 100644 --- a/src/tint/lang/wgsl/resolver/BUILD.bazel +++ b/src/tint/lang/wgsl/resolver/BUILD.bazel
@@ -48,6 +48,7 @@ "//src/tint/lang/core/intrinsic", "//src/tint/lang/core/intrinsic/data", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -137,6 +138,7 @@ "//src/tint/lang/core/intrinsic", "//src/tint/lang/core/type", "//src/tint/lang/core/type:test", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/ast/transform", "//src/tint/lang/wgsl/ast:test",
diff --git a/src/tint/lang/wgsl/resolver/BUILD.cmake b/src/tint/lang/wgsl/resolver/BUILD.cmake index a2e516c..bd4bf3b 100644 --- a/src/tint/lang/wgsl/resolver/BUILD.cmake +++ b/src/tint/lang/wgsl/resolver/BUILD.cmake
@@ -47,6 +47,7 @@ tint_lang_core_intrinsic tint_lang_core_intrinsic_data tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -136,6 +137,7 @@ tint_lang_core_intrinsic tint_lang_core_type tint_lang_core_type_test + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_ast_transform tint_lang_wgsl_ast_test
diff --git a/src/tint/lang/wgsl/resolver/BUILD.gn b/src/tint/lang/wgsl/resolver/BUILD.gn index 319ea05..ef3752b 100644 --- a/src/tint/lang/wgsl/resolver/BUILD.gn +++ b/src/tint/lang/wgsl/resolver/BUILD.gn
@@ -51,6 +51,7 @@ "${tint_src_dir}/lang/core/intrinsic", "${tint_src_dir}/lang/core/intrinsic/data", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem", @@ -139,6 +140,7 @@ "${tint_src_dir}/lang/core/intrinsic", "${tint_src_dir}/lang/core/type", "${tint_src_dir}/lang/core/type:unittests", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/ast:unittests", "${tint_src_dir}/lang/wgsl/ast/transform",
diff --git a/src/tint/lang/wgsl/resolver/address_space_layout_validation_test.cc b/src/tint/lang/wgsl/resolver/address_space_layout_validation_test.cc index 632683b..43c646a 100644 --- a/src/tint/lang/wgsl/resolver/address_space_layout_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/address_space_layout_validation_test.cc
@@ -372,7 +372,7 @@ // @group(0) @binding(0) // var<uniform> a : ScalarPackedAtEndOfVec3; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("ScalarPackedAtEndOfVec3", Vector{ Member("v", ty.vec3(ty.f16())), @@ -569,7 +569,7 @@ // @align(1) b : f32; // }; // var<push_constant> a : S; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Structure(Source{{12, 34}}, "S", Vector{Member("a", ty.f32(), Vector{MemberSize(5_a)}), Member(Source{{34, 56}}, "b", ty.f32(), Vector{MemberAlign(1_i)})}); @@ -595,7 +595,7 @@ // @align(4) b : f32; // }; // var<push_constant> a : S; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Structure("S", Vector{Member("a", ty.f32(), Vector{MemberSize(5_a)}), Member("b", ty.f32(), Vector{MemberAlign(4_i)})}); GlobalVar("a", ty("S"), core::AddressSpace::kPushConstant); @@ -618,7 +618,7 @@ // @group(0) @binding(0) // var<uniform> a : Outer; - Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); Structure(Source{{12, 34}}, "Inner", Vector{ @@ -650,7 +650,7 @@ // @group(0) @binding(0) // var<uniform> a : Outer; - Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); Alias("Inner", ty.array<f32, 10>(Vector{Stride(16)})); @@ -681,7 +681,7 @@ // @group(0) @binding(0) // var<uniform> a : Outer; - Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); Structure(Source{{12, 34}}, "Inner", Vector{ @@ -710,7 +710,7 @@ // @group(0) @binding(0) // var<uniform> a : Outer; - Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); Structure(Source{{12, 34}}, "Outer", Vector{ @@ -734,8 +734,8 @@ // @group(0) @binding(0) // var<uniform> a : Outer; - Enable(core::Extension::kF16); - Enable(core::Extension::kChromiumInternalRelaxedUniformLayout); + Enable(wgsl::Extension::kF16); + Enable(wgsl::Extension::kChromiumInternalRelaxedUniformLayout); Structure(Source{{12, 34}}, "Outer", Vector{
diff --git a/src/tint/lang/wgsl/resolver/address_space_validation_test.cc b/src/tint/lang/wgsl/resolver/address_space_validation_test.cc index 917a546..1d4f390d 100644 --- a/src/tint/lang/wgsl/resolver/address_space_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/address_space_validation_test.cc
@@ -245,7 +245,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_Storage_F16) { // enable f16; // var<storage> g : f16; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("g", ty.f16(), core::AddressSpace::kStorage, Binding(0_a), Group(0_a)); @@ -255,7 +255,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_Storage_F16) { // enable f16; // type t = ptr<storage, f16>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("t", ty.ptr<storage, f16>()); @@ -266,7 +266,7 @@ // enable f16; // type a = f16; // var<storage, read> g : a; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("a", ty.f16()); GlobalVar("g", ty("a"), core::AddressSpace::kStorage, Binding(0_a), Group(0_a)); @@ -278,7 +278,7 @@ // enable f16; // type a = f16; // type t = ptr<storage, a>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("a", ty.f16()); Alias("t", ty.ptr<storage>(ty("a"))); @@ -302,7 +302,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_Storage_VectorF16) { // var<storage> g : vec4<f16>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("g", ty.vec(ty.f16(), 4u), core::AddressSpace::kStorage, Binding(0_a), Group(0_a)); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -310,7 +310,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_Storage_VectorF16) { // type t = ptr<storage, vec4<f16>>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("t", ty.ptr<storage, vec4<f32>>()); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -339,7 +339,7 @@ // enable f16; // struct S{ a : f16 }; // var<storage, read> g : array<S, 3u>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("a", ty.f16())}); GlobalVar("g", ty.array(ty("S"), 3_u), core::AddressSpace::kStorage, core::Access::kRead, @@ -352,7 +352,7 @@ // enable f16; // struct S{ a : f16 }; // type t = ptr<storage, array<S, 3u>, read>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("a", ty.f16())}); Alias("t", ty.ptr<storage, read>(ty.array(ty("S"), 3_u))); @@ -407,7 +407,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_Storage_StructF16) { // struct S { x : f16 }; // var<storage, read> g : S; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); GlobalVar("g", ty("S"), core::AddressSpace::kStorage, core::Access::kRead, Binding(0_a), @@ -419,7 +419,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_Storage_StructF16) { // struct S { x : f16 }; // type t = ptr<storage, S, read>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("t", ty.ptr<storage, read>(ty("S"))); @@ -431,7 +431,7 @@ // struct S { x : f16 }; // type a1 = S; // var<storage, read> g : a1; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("a1", ty("S")); @@ -446,7 +446,7 @@ // struct S { x : f16 }; // type a1 = S; // type t = ptr<storage, a1, read>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("a1", ty("S")); @@ -661,7 +661,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_UniformBufferF16) { // enable f16; // var<uniform> g : f16; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("g", ty.f16(), core::AddressSpace::kUniform, Binding(0_a), Group(0_a)); @@ -671,7 +671,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_UniformBufferF16) { // enable f16; // type t = ptr<uniform, f16>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("t", ty.ptr<uniform, f16>()); @@ -695,7 +695,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_UniformBufferVectorF16) { // enable f16; // var<uniform> g : vec4<f16>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("g", ty.vec4<f16>(), core::AddressSpace::kUniform, Binding(0_a), Group(0_a)); @@ -705,7 +705,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_UniformBufferVectorF16) { // enable f16; // type t = ptr<uniform, vec4<f16>>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias("t", ty.ptr<uniform, f16>()); @@ -740,7 +740,7 @@ // @size(16) f : f16; // } // var<uniform> g : array<S, 3u>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("a", ty.f16(), Vector{MemberSize(16_a)})}); GlobalVar("g", ty.array(ty("S"), 3_u), core::AddressSpace::kUniform, Binding(0_a), Group(0_a)); @@ -754,7 +754,7 @@ // @size(16) f : f16; // } // type t = ptr<uniform, array<S, 3u>>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("a", ty.f16(), Vector{MemberSize(16_a)})}); Alias("t", ty.ptr<uniform>(ty.array(ty("S"), 3_u))); @@ -806,7 +806,7 @@ // enable f16; // struct S { x : f16 }; // var<uniform> g : S; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); GlobalVar("g", ty("S"), core::AddressSpace::kUniform, Binding(0_a), Group(0_a)); @@ -818,7 +818,7 @@ // enable f16; // struct S { x : f16 }; // type t = ptr<uniform, S>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("t", ty.ptr<uniform>(ty("S"))); @@ -831,7 +831,7 @@ // struct S { x : f16 }; // type a1 = S; // var<uniform> g : a1; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("a1", ty("S")); @@ -845,7 +845,7 @@ // struct S { x : f16 }; // type a1 = S; // type t = ptr<uniform, a1>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Structure("S", Vector{Member("x", ty.f16())}); Alias("a1", ty("S")); @@ -857,7 +857,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_PushConstantBool) { // enable chromium_experimental_push_constant; // var<push_constant> g : bool; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar(Source{{56, 78}}, "g", ty.bool_(Source{{12, 34}}), core::AddressSpace::kPushConstant); ASSERT_FALSE(r()->Resolve()); @@ -870,7 +870,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_PushConstantBool) { // enable chromium_experimental_push_constant; // type t = ptr<push_constant, bool>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Alias(Source{{56, 78}}, "t", ty.ptr<push_constant>(ty.bool_(Source{{12, 34}}))); ASSERT_FALSE(r()->Resolve()); @@ -884,8 +884,8 @@ // enable f16; // enable chromium_experimental_push_constant; // var<push_constant> g : f16; - Enable(core::Extension::kF16); - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kF16); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("g", ty.f16(Source{{56, 78}}), core::AddressSpace::kPushConstant); ASSERT_FALSE(r()->Resolve()); @@ -897,8 +897,8 @@ // enable f16; // enable chromium_experimental_push_constant; // type t = ptr<push_constant, f16>; - Enable(core::Extension::kF16); - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kF16); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Alias("t", ty.ptr<push_constant>(ty.f16(Source{{56, 78}}))); ASSERT_FALSE(r()->Resolve()); @@ -909,7 +909,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_PushConstantPointer) { // enable chromium_experimental_push_constant; // var<push_constant> g : ptr<private, f32>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar(Source{{56, 78}}, "g", ty.ptr<private_, f32>(Source{{12, 34}}), core::AddressSpace::kPushConstant); @@ -923,7 +923,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_PushConstantPointer) { // enable chromium_experimental_push_constant; // type t = ptr<push_constant, ptr<private, f32>>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Alias(Source{{56, 78}}, "t", ty.ptr<push_constant>(ty.ptr<private_, f32>(Source{{12, 34}}))); ASSERT_FALSE(r()->Resolve()); @@ -936,7 +936,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_PushConstantIntScalar) { // enable chromium_experimental_push_constant; // var<push_constant> g : i32; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("g", ty.i32(), core::AddressSpace::kPushConstant); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -945,7 +945,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_PushConstantIntScalar) { // enable chromium_experimental_push_constant; // type t = ptr<push_constant, i32>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Alias("t", ty.ptr<push_constant, i32>()); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -954,7 +954,7 @@ TEST_F(ResolverAddressSpaceValidationTest, GlobalVariable_PushConstantVectorF32) { // enable chromium_experimental_push_constant; // var<push_constant> g : vec4<f32>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("g", ty.vec4<f32>(), core::AddressSpace::kPushConstant); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -963,7 +963,7 @@ TEST_F(ResolverAddressSpaceValidationTest, PointerAlias_PushConstantVectorF32) { // enable chromium_experimental_push_constant; // var<push_constant> g : vec4<f32>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Alias("t", ty.ptr<push_constant, vec4<f32>>()); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -973,7 +973,7 @@ // enable chromium_experimental_push_constant; // struct S { a : f32} // var<push_constant> g : array<S, 3u>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Structure("S", Vector{Member("a", ty.f32())}); GlobalVar("g", ty.array(ty("S"), 3_u), core::AddressSpace::kPushConstant); @@ -984,7 +984,7 @@ // enable chromium_experimental_push_constant; // struct S { a : f32} // type t = ptr<push_constant, array<S, 3u>>; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); Structure("S", Vector{Member("a", ty.f32())}); Alias("t", ty.ptr<push_constant>(ty.array(ty("S"), 3_u)));
diff --git a/src/tint/lang/wgsl/resolver/attribute_validation_test.cc b/src/tint/lang/wgsl/resolver/attribute_validation_test.cc index 5e1a8db1..706d974 100644 --- a/src/tint/lang/wgsl/resolver/attribute_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/attribute_validation_test.cc
@@ -80,7 +80,7 @@ struct TestWithParams : ResolverTestWithParam<TestParams> { void EnableExtensionIfNecessary(AttributeKind attributeKind) { if (attributeKind == AttributeKind::kIndex) { - Enable(core::Extension::kChromiumInternalDualSourceBlending); + Enable(wgsl::Extension::kChromiumInternalDualSourceBlending); } } }; @@ -96,7 +96,7 @@ case AttributeKind::kBuiltin: return {builder.Builtin(source, core::BuiltinValue::kPosition)}; case AttributeKind::kDiagnostic: - return {builder.DiagnosticAttribute(source, core::DiagnosticSeverity::kInfo, "chromium", + return {builder.DiagnosticAttribute(source, wgsl::DiagnosticSeverity::kInfo, "chromium", "unreachable_code")}; case AttributeKind::kGroup: return {builder.Group(source, 1_a)};
diff --git a/src/tint/lang/wgsl/resolver/bitcast_validation_test.cc b/src/tint/lang/wgsl/resolver/bitcast_validation_test.cc index 92756c2..2913165 100644 --- a/src/tint/lang/wgsl/resolver/bitcast_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/bitcast_validation_test.cc
@@ -108,7 +108,7 @@ auto dst = std::get<1>(GetParam()); if (src.used_f16 || dst.used_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } auto* cast = Bitcast(dst.ast(*this), src.expr(*this, 0)); @@ -151,7 +151,7 @@ auto dst = std::get<1>(GetParam()); if (src.used_f16 || dst.used_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } auto* cast = Bitcast(dst.ast(*this), Expr(Source{{12, 34}}, "src")); @@ -196,7 +196,7 @@ auto dst = std::get<1>(GetParam()); if (src.used_f16 || dst.used_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } // Use an alias so we can put a Source on the bitcast type @@ -242,7 +242,7 @@ auto dst = std::get<1>(GetParam()); if (src.used_f16 || dst.used_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); } WrapInFunction(Bitcast(Source{{12, 34}}, dst.ast(*this), src.expr(*this, 0))); @@ -379,7 +379,7 @@ //////////////////////////////////////////////////////////////////////////////// using ResolverBitcastValidationTestInvalidConst = tint::resolver::ResolverTest; TEST_F(ResolverBitcastValidationTestInvalidConst, ConstBitcastToF16NaN) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // Lower 16 bits of const u32 0x7e10 is NaN in f16. auto* a = Const("a", Expr(u32(0x00007e10))); @@ -393,7 +393,7 @@ } TEST_F(ResolverBitcastValidationTestInvalidConst, ConstBitcastToF16Inf) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // 0xfc00 is -Inf in f16. auto* a = Const("a", Call<vec2<u32>>(u32(0x00007010), u32(0xfc008000))); @@ -417,7 +417,7 @@ } TEST_F(ResolverBitcastValidationTestInvalidConst, ConstBitcastToF32Inf) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // 0x7f800000 is Inf in f32. auto* a = Const("a", Call<vec3<u32>>(u32(0xA0008000), u32(0x7f800000), u32(0x40000000)));
diff --git a/src/tint/lang/wgsl/resolver/builtin_enum_test.cc b/src/tint/lang/wgsl/resolver/builtin_enum_test.cc index 26749b2..3f73a5d 100644 --- a/src/tint/lang/wgsl/resolver/builtin_enum_test.cc +++ b/src/tint/lang/wgsl/resolver/builtin_enum_test.cc
@@ -57,7 +57,7 @@ TEST_P(ResolverAddressSpaceUsedWithTemplateArgs, Test) { // fn f(p : ptr<ADDRESS_SPACE<T>, f32) {} - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); auto* tmpl = Ident(Source{{12, 34}}, GetParam(), "T"); Func("f", Vector{Param("p", ty("ptr", tmpl, ty.f32()))}, ty.void_(), tint::Empty); EXPECT_FALSE(r()->Resolve());
diff --git a/src/tint/lang/wgsl/resolver/builtin_structs_test.cc b/src/tint/lang/wgsl/resolver/builtin_structs_test.cc index 0696559..409b238 100644 --- a/src/tint/lang/wgsl/resolver/builtin_structs_test.cc +++ b/src/tint/lang/wgsl/resolver/builtin_structs_test.cc
@@ -28,7 +28,7 @@ using ResolverBuiltinStructs = ResolverTestWithParam<core::Builtin>; TEST_P(ResolverBuiltinStructs, Resolve) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // var<private> p : NAME; auto* var = GlobalVar("p", ty(GetParam()), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/wgsl/resolver/builtin_test.cc b/src/tint/lang/wgsl/resolver/builtin_test.cc index 3bb9c95..1ec3b5f 100644 --- a/src/tint/lang/wgsl/resolver/builtin_test.cc +++ b/src/tint/lang/wgsl/resolver/builtin_test.cc
@@ -492,7 +492,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, OneParam_Scalar_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto val = 0.5_h; if (param.name == std::string("acosh")) { @@ -520,7 +520,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, OneParam_Vector_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto val = param.name == std::string("acosh") ? Call<vec3<f16>>(1.0_h, 2.0_h, 3.0_h) : Call<vec3<f16>>(0.5_h, 0.5_h, 0.8_h); @@ -549,7 +549,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, TwoParams_Scalar_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, 1_h, 1_h); WrapInFunction(call); @@ -572,7 +572,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, TwoParams_Vector_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, Call<vec3<f16>>(1_h, 1_h, 3_h), Call<vec3<f16>>(1_h, 1_h, 3_h)); WrapInFunction(call); @@ -598,7 +598,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, ThreeParams_Scalar_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, 0_h, 1_h, 2_h); WrapInFunction(call); @@ -621,7 +621,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, ThreeParams_Vector_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, Call<vec3<f16>>(0_h, 0_h, 0_h), Call<vec3<f16>>(1_h, 1_h, 1_h), Call<vec3<f16>>(2_h, 2_h, 2_h)); @@ -649,7 +649,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, FourParams_Scalar_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, 1_h, 1_h, 1_h, 1_h); WrapInFunction(call); @@ -672,7 +672,7 @@ TEST_P(ResolverBuiltinTest_FloatBuiltin_IdenticalType, FourParams_Vector_f16) { auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call(param.name, Call<vec3<f16>>(1_h, 1_h, 3_h), Call<vec3<f16>>(1_h, 1_h, 3_h), Call<vec3<f16>>(1_h, 1_h, 3_h), Call<vec3<f16>>(1_h, 1_h, 3_h)); @@ -766,7 +766,7 @@ } TEST_F(ResolverBuiltinFloatTest, Cross_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("cross", Call<vec3<f16>>(1_h, 2_h, 3_h), Call<vec3<f16>>(1_h, 2_h, 3_h)); WrapInFunction(call); @@ -863,7 +863,7 @@ } TEST_F(ResolverBuiltinFloatTest, Distance_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("distance", 1_h, 1_h); WrapInFunction(call); @@ -885,7 +885,7 @@ } TEST_F(ResolverBuiltinFloatTest, Distance_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("distance", Call<vec3<f16>>(1_h, 1_h, 3_h), Call<vec3<f16>>(1_h, 1_h, 3_h)); WrapInFunction(call); @@ -971,7 +971,7 @@ } TEST_F(ResolverBuiltinFloatTest, FrexpScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("frexp", 1_h); WrapInFunction(call); @@ -1035,7 +1035,7 @@ } TEST_F(ResolverBuiltinFloatTest, FrexpVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("frexp", Call<vec3<f16>>()); WrapInFunction(call); @@ -1097,7 +1097,7 @@ } TEST_F(ResolverBuiltinFloatTest, Length_Scalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("length", 1_h); WrapInFunction(call); @@ -1119,7 +1119,7 @@ } TEST_F(ResolverBuiltinFloatTest, Length_FloatVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("length", Call<vec3<f16>>(1_h, 1_h, 3_h)); WrapInFunction(call); @@ -1174,7 +1174,7 @@ } TEST_F(ResolverBuiltinFloatTest, Mix_VectorScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("mix", Call<vec3<f16>>(1_h, 1_h, 1_h), Call<vec3<f16>>(1_h, 1_h, 1_h), 4_h); WrapInFunction(call); @@ -1220,7 +1220,7 @@ } TEST_F(ResolverBuiltinFloatTest, ModfScalar_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("modf", 1_h); WrapInFunction(call); @@ -1284,7 +1284,7 @@ } TEST_F(ResolverBuiltinFloatTest, ModfVector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("modf", Call<vec3<f16>>()); WrapInFunction(call); @@ -1394,7 +1394,7 @@ } TEST_F(ResolverBuiltinFloatTest, Normalize_Vector_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("normalize", Call<vec3<f16>>(1_h, 1_h, 3_h)); WrapInFunction(call); @@ -1857,7 +1857,7 @@ } TEST_F(ResolverBuiltinTest, Determinant_2x2_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("var", ty.mat2x2<f16>(), core::AddressSpace::kPrivate); @@ -1883,7 +1883,7 @@ } TEST_F(ResolverBuiltinTest, Determinant_3x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("var", ty.mat3x3<f16>(), core::AddressSpace::kPrivate); @@ -1909,7 +1909,7 @@ } TEST_F(ResolverBuiltinTest, Determinant_4x4_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("var", ty.mat4x4<f16>(), core::AddressSpace::kPrivate); @@ -1970,7 +1970,7 @@ } TEST_F(ResolverBuiltinTest, Dot_Vec2_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("my_var", ty.vec2<f16>(), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/wgsl/resolver/builtin_validation_test.cc b/src/tint/lang/wgsl/resolver/builtin_validation_test.cc index baca6e9..86e4f4c 100644 --- a/src/tint/lang/wgsl/resolver/builtin_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/builtin_validation_test.cc
@@ -537,7 +537,7 @@ TEST_F(ResolverDP4aExtensionValidationTest, Dot4I8PackedWithExtension) { // enable chromium_experimental_dp4a; // fn func { return dot4I8Packed(1u, 2u); } - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); Func("func", tint::Empty, ty.i32(), Vector{ @@ -565,7 +565,7 @@ TEST_F(ResolverDP4aExtensionValidationTest, Dot4U8PackedWithExtension) { // enable chromium_experimental_dp4a; // fn func { return dot4U8Packed(1u, 2u); } - Enable(core::Extension::kChromiumExperimentalDp4A); + Enable(wgsl::Extension::kChromiumExperimentalDp4A); Func("func", tint::Empty, ty.u32(), Vector{ @@ -670,7 +670,7 @@ TEST_F(ResolverBuiltinValidationTest, SubgroupBallotWithExtension) { // enable chromium_experimental_subgroups; // fn func -> vec4<u32> { return subgroupBallot(); } - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.vec4<u32>(), Vector{ @@ -696,7 +696,7 @@ TEST_F(ResolverBuiltinValidationTest, SubgroupBroadcastWithExtension) { // enable chromium_experimental_subgroups; // fn func -> i32 { return subgroupBroadcast(1,0); } - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.i32(), Vector{ @@ -709,7 +709,7 @@ TEST_F(ResolverBuiltinValidationTest, SubroupBroadcastInComputeStage) { // @vertex fn func { dpdx(1.0); } - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); auto* call = Call("subgroupBroadcast", 1_f, 0_u); Func(Source{{1, 2}}, "func", tint::Empty, ty.void_(), Vector{Ignore(call)}, @@ -724,7 +724,7 @@ TEST_F(ResolverBuiltinValidationTest, SubroupBroadcastInVertexStageIsError) { // @vertex fn func { dpdx(1.0); } - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); auto* call = Call(Source{{3, 4}}, "subgroupBroadcast", 1_f, 0_u); Func("func", tint::Empty, ty.vec4<f32>(), Vector{Ignore(call), Return(Call(ty.vec4<f32>()))}, @@ -740,7 +740,7 @@ TEST_F(ResolverBuiltinValidationTest, SubroupBroadcastInFragmentStageIsError) { // @vertex fn func { dpdx(1.0); } - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); auto* call = Call(Source{{3, 4}}, "subgroupBroadcast", 1_f, 0_u); Func("func", @@ -755,7 +755,7 @@ } TEST_F(ResolverBuiltinValidationTest, SubgroupBroadcastValueF32) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.f32(), Vector{ Return(Call("subgroupBroadcast", 1_f, 0_u)), @@ -764,7 +764,7 @@ } TEST_F(ResolverBuiltinValidationTest, SubgroupBroadcastValueI32) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.i32(), Vector{ Return(Call("subgroupBroadcast", 1_i, 0_u)), @@ -773,7 +773,7 @@ } TEST_F(ResolverBuiltinValidationTest, SubgroupBroadcastValueU32) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.u32(), Vector{ Return(Call("subgroupBroadcast", 1_u, 0_u)), @@ -782,7 +782,7 @@ } TEST_F(ResolverBuiltinValidationTest, SubgroupBroadcastLaneArgMustBeConst) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("func", tint::Empty, ty.void_(), Vector{ Decl(Let("lane", Expr(1_u))), @@ -810,7 +810,7 @@ TEST_F(ResolverBuiltinValidationTest, TextureBarrierWithExtension) { // enable chromium_experimental_read_write_storage_texture; // fn func { textureBarrier(); } - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); Func("func", tint::Empty, ty.void_(), Vector{
diff --git a/src/tint/lang/wgsl/resolver/call_test.cc b/src/tint/lang/wgsl/resolver/call_test.cc index 961fe98..669b087 100644 --- a/src/tint/lang/wgsl/resolver/call_test.cc +++ b/src/tint/lang/wgsl/resolver/call_test.cc
@@ -64,7 +64,7 @@ }; TEST_F(ResolverCallTest, Valid) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::Parameter*, 4> params; Vector<const ast::Expression*, 4> args;
diff --git a/src/tint/lang/wgsl/resolver/call_validation_test.cc b/src/tint/lang/wgsl/resolver/call_validation_test.cc index b26816c..b665d0d 100644 --- a/src/tint/lang/wgsl/resolver/call_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/call_validation_test.cc
@@ -166,7 +166,7 @@ // var v : S; // foo(&v.m); // } - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); auto* S = Structure("S", Vector{ Member("m", ty.i32()), }); @@ -346,7 +346,7 @@ // let p: ptr<function, i32> = &(v[0]); // x(p); // } - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); Func("foo", Vector{ Param("p", ty.ptr<function, i32>()), @@ -436,7 +436,7 @@ // let p3 = &(*p2)[0]; // foo(&*p); // } - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); Func("foo", Vector{ Param("p", ty.ptr<function, i32>()),
diff --git a/src/tint/lang/wgsl/resolver/dependency_graph_test.cc b/src/tint/lang/wgsl/resolver/dependency_graph_test.cc index 508ac34..a22669f 100644 --- a/src/tint/lang/wgsl/resolver/dependency_graph_test.cc +++ b/src/tint/lang/wgsl/resolver/dependency_graph_test.cc
@@ -1106,9 +1106,9 @@ // a transform may produce such a AST tree that has some declarations before directive nodes. // DependencyGraph should deal with these cases. auto* var_1 = GlobalVar("SYMBOL1", ty.i32()); - auto* enable = Enable(core::Extension::kF16); + auto* enable = Enable(wgsl::Extension::kF16); auto* var_2 = GlobalVar("SYMBOL2", ty.f32()); - auto* diagnostic = DiagnosticDirective(core::DiagnosticSeverity::kWarning, "foo"); + auto* diagnostic = DiagnosticDirective(wgsl::DiagnosticSeverity::kWarning, "foo"); EXPECT_THAT(AST().GlobalDeclarations(), ElementsAre(var_1, enable, var_2, diagnostic)); EXPECT_THAT(Build().ordered_globals, ElementsAre(enable, diagnostic, var_1, var_2));
diff --git a/src/tint/lang/wgsl/resolver/diagnostic_control_test.cc b/src/tint/lang/wgsl/resolver/diagnostic_control_test.cc index 43bea18..971eb23 100644 --- a/src/tint/lang/wgsl/resolver/diagnostic_control_test.cc +++ b/src/tint/lang/wgsl/resolver/diagnostic_control_test.cc
@@ -32,7 +32,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnreachableCode_ErrorViaDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts); @@ -42,7 +42,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnreachableCode_WarningViaDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts); @@ -52,7 +52,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnreachableCode_InfoViaDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts); @@ -62,7 +62,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnreachableCode_OffViaDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts); @@ -73,7 +73,7 @@ TEST_F(ResolverDiagnosticControlTest, UnreachableCode_ErrorViaAttribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts, Vector{attr}); @@ -84,7 +84,7 @@ TEST_F(ResolverDiagnosticControlTest, UnreachableCode_WarningViaAttribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts, Vector{attr}); @@ -95,7 +95,7 @@ TEST_F(ResolverDiagnosticControlTest, UnreachableCode_InfoViaAttribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts, Vector{attr}); @@ -106,7 +106,7 @@ TEST_F(ResolverDiagnosticControlTest, UnreachableCode_OffViaAttribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts, Vector{attr}); @@ -122,9 +122,9 @@ // return; // return; // Should produce a warning // } - DiagnosticDirective(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kWarning, "chromium", "unreachable_code"); auto stmts = Vector{Return(), Return()}; Func("foo", {}, ty.void_(), stmts, Vector{attr}); @@ -150,7 +150,7 @@ // } { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "chromium", "unreachable_code"); Func("foo", {}, ty.void_(), Vector{ Return(), @@ -167,7 +167,7 @@ } { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kInfo, "chromium", "unreachable_code"); Func("zoo", {}, ty.void_(), Vector{ Return(), @@ -218,22 +218,22 @@ Return(), Return(Source{{34, 43}}), }, - attr(core::DiagnosticSeverity::kInfo)), + attr(wgsl::DiagnosticSeverity::kInfo)), Else(Block(Vector{ While(Expr(true), Block( Vector{ Return(), Return(Source{{56, 65}}), }, - attr(core::DiagnosticSeverity::kOff))), + attr(wgsl::DiagnosticSeverity::kOff))), Return(), Return(Source{{78, 87}}), }))), }, - attr(core::DiagnosticSeverity::kWarning)), + attr(wgsl::DiagnosticSeverity::kWarning)), }), }, - attr(core::DiagnosticSeverity::kOff)); + attr(wgsl::DiagnosticSeverity::kOff)); EXPECT_TRUE(r()->Resolve()) << r()->error(); EXPECT_EQ(r()->error(), R"(34:43 note: code is unreachable @@ -241,7 +241,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnrecognizedCoreRuleName_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "derivative_uniform")); EXPECT_TRUE(r()->Resolve()) << r()->error(); EXPECT_EQ(r()->error(), @@ -251,7 +251,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnrecognizedCoreRuleName_Attribute) { - auto* attr = DiagnosticAttribute(core::DiagnosticSeverity::kError, + auto* attr = DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "derivative_uniform")); Func("foo", {}, ty.void_(), {}, Vector{attr}); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -262,7 +262,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnrecognizedChromiumRuleName_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_cod")); EXPECT_TRUE(r()->Resolve()) << r()->error(); EXPECT_EQ(r()->error(), @@ -273,7 +273,7 @@ TEST_F(ResolverDiagnosticControlTest, UnrecognizedChromiumRuleName_Attribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_cod")); Func("foo", {}, ty.void_(), {}, Vector{attr}); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -284,7 +284,7 @@ } TEST_F(ResolverDiagnosticControlTest, UnrecognizedOtherRuleName_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "unknown", "unreachable_cod")); EXPECT_TRUE(r()->Resolve()) << r()->error(); EXPECT_EQ(r()->error(), ""); @@ -292,7 +292,7 @@ TEST_F(ResolverDiagnosticControlTest, UnrecognizedOtherRuleName_Attribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "unknown", "unreachable_cod")); Func("foo", {}, ty.void_(), {}, Vector{attr}); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -300,17 +300,17 @@ } TEST_F(ResolverDiagnosticControlTest, Conflict_SameNameSameSeverity_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_code")); - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_code")); EXPECT_TRUE(r()->Resolve()) << r()->error(); } TEST_F(ResolverDiagnosticControlTest, Conflict_SameNameDifferentSeverity_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_code")); - DiagnosticDirective(core::DiagnosticSeverity::kOff, + DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_code")); EXPECT_FALSE(r()->Resolve()); EXPECT_EQ(r()->error(), @@ -319,9 +319,9 @@ } TEST_F(ResolverDiagnosticControlTest, Conflict_SameUnknownNameDifferentSeverity_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_codes")); - DiagnosticDirective(core::DiagnosticSeverity::kOff, + DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_codes")); EXPECT_FALSE(r()->Resolve()); EXPECT_EQ(r()->error(), @@ -336,17 +336,17 @@ } TEST_F(ResolverDiagnosticControlTest, Conflict_DifferentUnknownNameDifferentSeverity_Directive) { - DiagnosticDirective(core::DiagnosticSeverity::kError, "chromium", "unreachable_codes"); - DiagnosticDirective(core::DiagnosticSeverity::kOff, "chromium", "unreachable_codex"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_codes"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, "chromium", "unreachable_codex"); EXPECT_TRUE(r()->Resolve()) << r()->error(); } TEST_F(ResolverDiagnosticControlTest, Conflict_SameNameSameSeverity_Attribute) { auto* attr1 = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_code")); auto* attr2 = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_code")); Func("foo", {}, ty.void_(), {}, Vector{attr1, attr2}); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -354,10 +354,10 @@ TEST_F(ResolverDiagnosticControlTest, Conflict_SameNameDifferentSeverity_Attribute) { auto* attr1 = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_code")); auto* attr2 = - DiagnosticAttribute(core::DiagnosticSeverity::kOff, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_code")); Func("foo", {}, ty.void_(), {}, Vector{attr1, attr2}); EXPECT_FALSE(r()->Resolve()); @@ -368,10 +368,10 @@ TEST_F(ResolverDiagnosticControlTest, Conflict_SameUnknownNameDifferentSeverity_Attribute) { auto* attr1 = - DiagnosticAttribute(core::DiagnosticSeverity::kError, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, DiagnosticRuleName(Source{{12, 34}}, "chromium", "unreachable_codes")); auto* attr2 = - DiagnosticAttribute(core::DiagnosticSeverity::kOff, + DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, DiagnosticRuleName(Source{{56, 78}}, "chromium", "unreachable_codes")); Func("foo", {}, ty.void_(), {}, Vector{attr1, attr2}); EXPECT_FALSE(r()->Resolve()); @@ -388,9 +388,9 @@ TEST_F(ResolverDiagnosticControlTest, Conflict_DifferentUnknownNameDifferentSeverity_Attribute) { auto* attr1 = - DiagnosticAttribute(core::DiagnosticSeverity::kError, "chromium", "unreachable_codes"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_codes"); auto* attr2 = - DiagnosticAttribute(core::DiagnosticSeverity::kOff, "chromium", "unreachable_codex"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kOff, "chromium", "unreachable_codex"); Func("foo", {}, ty.void_(), {}, Vector{attr1, attr2}); EXPECT_TRUE(r()->Resolve()) << r()->error(); }
diff --git a/src/tint/lang/wgsl/resolver/dual_source_blending_extension_test.cc b/src/tint/lang/wgsl/resolver/dual_source_blending_extension_test.cc index bd6bb4b..6fe1a48 100644 --- a/src/tint/lang/wgsl/resolver/dual_source_blending_extension_test.cc +++ b/src/tint/lang/wgsl/resolver/dual_source_blending_extension_test.cc
@@ -42,7 +42,7 @@ class DualSourceBlendingExtensionTests : public ResolverTest { public: DualSourceBlendingExtensionTests() { - Enable(core::Extension::kChromiumInternalDualSourceBlending); + Enable(wgsl::Extension::kChromiumInternalDualSourceBlending); } }; @@ -148,7 +148,7 @@ class DualSourceBlendingExtensionTestWithParams : public ResolverTestWithParam<int> { public: DualSourceBlendingExtensionTestWithParams() { - Enable(core::Extension::kChromiumInternalDualSourceBlending); + Enable(wgsl::Extension::kChromiumInternalDualSourceBlending); } };
diff --git a/src/tint/lang/wgsl/resolver/entry_point_validation_test.cc b/src/tint/lang/wgsl/resolver/entry_point_validation_test.cc index 4b09e58..a14d4f4 100644 --- a/src/tint/lang/wgsl/resolver/entry_point_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/entry_point_validation_test.cc
@@ -435,7 +435,7 @@ TEST_F(ResolverEntryPointValidationTest, PushConstantAllowedWithEnable) { // enable chromium_experimental_push_constant; // var<push_constant> a : u32; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("a", ty.u32(), core::AddressSpace::kPushConstant); EXPECT_TRUE(r()->Resolve()); @@ -465,7 +465,7 @@ // @compute @workgroup_size(1) fn main() { // _ = a; // } - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("a", ty.u32(), core::AddressSpace::kPushConstant); Func("main", {}, ty.void_(), Vector{Assign(Phony(), "a")}, @@ -482,7 +482,7 @@ // _ = a; // _ = b; // } - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar(Source{{1, 2}}, "a", ty.u32(), core::AddressSpace::kPushConstant); GlobalVar(Source{{3, 4}}, "b", ty.u32(), core::AddressSpace::kPushConstant); @@ -511,7 +511,7 @@ // uses_a(); // uses_b(); // } - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar(Source{{1, 2}}, "a", ty.u32(), core::AddressSpace::kPushConstant); GlobalVar(Source{{3, 4}}, "b", ty.u32(), core::AddressSpace::kPushConstant); @@ -543,7 +543,7 @@ // @compute @workgroup_size(1) fn uses_b() { // _ = a; // } - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar("a", ty.u32(), core::AddressSpace::kPushConstant); GlobalVar("b", ty.u32(), core::AddressSpace::kPushConstant); @@ -598,7 +598,7 @@ // fn main(@location(0) @interpolate(flat) a : *) {} auto params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Param("a", params.create_ast_type(*this), Vector{ @@ -629,7 +629,7 @@ // fn main(a : Input) {} auto params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* input = Structure( "Input", Vector{ @@ -659,7 +659,7 @@ // } auto params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Func(Source{{12, 34}}, "main", tint::Empty, params.create_ast_type(*this), Vector{ @@ -689,7 +689,7 @@ // } auto params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* output = Structure("Output", Vector{
diff --git a/src/tint/lang/wgsl/resolver/expression_kind_test.cc b/src/tint/lang/wgsl/resolver/expression_kind_test.cc index a1e98ba..aad7671 100644 --- a/src/tint/lang/wgsl/resolver/expression_kind_test.cc +++ b/src/tint/lang/wgsl/resolver/expression_kind_test.cc
@@ -291,7 +291,7 @@ GlobalVar("v", ty("texture_storage_2d", "rgba8unorm", expr), Group(0_u), Binding(0_u)); break; case Use::kAddressSpace: - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); Func(Symbols().New(), Vector{Param("p", ty("ptr", expr, ty.f32()))}, ty.void_(), tint::Empty); break;
diff --git a/src/tint/lang/wgsl/resolver/f16_extension_test.cc b/src/tint/lang/wgsl/resolver/f16_extension_test.cc index d6848aa..3ebf7f7 100644 --- a/src/tint/lang/wgsl/resolver/f16_extension_test.cc +++ b/src/tint/lang/wgsl/resolver/f16_extension_test.cc
@@ -28,7 +28,7 @@ TEST_F(ResolverF16ExtensionTest, TypeUsedWithExtension) { // enable f16; // var<private> v : f16; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", ty.f16(), core::AddressSpace::kPrivate); @@ -46,7 +46,7 @@ TEST_F(ResolverF16ExtensionTest, Vec2TypeUsedWithExtension) { // enable f16; // var<private> v : vec2<f16>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", ty.vec2<f16>(), core::AddressSpace::kPrivate); @@ -64,7 +64,7 @@ TEST_F(ResolverF16ExtensionTest, Vec2TypeInitUsedWithExtension) { // enable f16; // var<private> v = vec2<f16>(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", Call<vec2<f16>>(), core::AddressSpace::kPrivate); @@ -82,7 +82,7 @@ TEST_F(ResolverF16ExtensionTest, Vec2TypeConvUsedWithExtension) { // enable f16; // var<private> v = vec2<f16>(vec2<f32>()); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", Call<vec2<f16>>(Call<vec2<f32>>()), core::AddressSpace::kPrivate); @@ -101,7 +101,7 @@ TEST_F(ResolverF16ExtensionTest, F16LiteralUsedWithExtension) { // enable f16; // var<private> v = 16h; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", Expr(16_h), core::AddressSpace::kPrivate); @@ -121,7 +121,7 @@ TEST_P(ResolverF16ExtensionBuiltinTypeAliasTest, Vec2hTypeUsedWithExtension) { // enable f16; // var<private> v : vec2h; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", ty(Source{{12, 34}}, GetParam()), core::AddressSpace::kPrivate);
diff --git a/src/tint/lang/wgsl/resolver/function_validation_test.cc b/src/tint/lang/wgsl/resolver/function_validation_test.cc index e1d479a..ac2383d 100644 --- a/src/tint/lang/wgsl/resolver/function_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/function_validation_test.cc
@@ -1054,7 +1054,7 @@ Func("f", Vector{arg}, ty.void_(), tint::Empty); if (param.address_space == core::AddressSpace::kPixelLocal) { - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); } if (param.expectation == Expectation::kAlwaysPass) { @@ -1080,11 +1080,11 @@ Structure("S", Vector{Member("a", ty.i32())}); auto ptr_type = ty("ptr", Ident(Source{{12, 34}}, param.address_space), ty("S")); auto* arg = Param(Source{{12, 34}}, "p", ptr_type); - Enable(core::Extension::kChromiumExperimentalFullPtrParameters); + Enable(wgsl::Extension::kChromiumExperimentalFullPtrParameters); Func("f", Vector{arg}, ty.void_(), tint::Empty); if (param.address_space == core::AddressSpace::kPixelLocal) { - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); } if (param.expectation == Expectation::kAlwaysPass ||
diff --git a/src/tint/lang/wgsl/resolver/host_shareable_validation_test.cc b/src/tint/lang/wgsl/resolver/host_shareable_validation_test.cc index 473d84a..fcc6543 100644 --- a/src/tint/lang/wgsl/resolver/host_shareable_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/host_shareable_validation_test.cc
@@ -97,7 +97,7 @@ } TEST_F(ResolverHostShareableValidationTest, NoError) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* i1 = Structure("I1", Vector{ Member(Source{{1, 1}}, "w1", ty.f32()),
diff --git a/src/tint/lang/wgsl/resolver/materialize_test.cc b/src/tint/lang/wgsl/resolver/materialize_test.cc index 1c8655e..a8fed54 100644 --- a/src/tint/lang/wgsl/resolver/materialize_test.cc +++ b/src/tint/lang/wgsl/resolver/materialize_test.cc
@@ -318,7 +318,7 @@ MaterializeTest<std::tuple<Expectation, Method, Data>>; TEST_P(MaterializeAbstractNumericToConcreteType, Test) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const auto& param = GetParam(); const auto& expectation = std::get<0>(param); @@ -1303,7 +1303,7 @@ TEST_F(MaterializeAbstractStructure, Modf_Scalar_ExplicitType) { // var v = modf(1_h); // v is __modf_result_f16 // v = modf(1); // __modf_result_f16 <- __modf_result_abstract - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("modf", 1_a); WrapInFunction(Decl(Var("v", Call("modf", 1_h))), // Assign("v", call)); @@ -1322,7 +1322,7 @@ TEST_F(MaterializeAbstractStructure, Modf_Vector_ExplicitType) { // var v = modf(vec2(1_h)); // v is __modf_result_vec2_f16 // v = modf(vec2(1)); // __modf_result_vec2_f16 <- __modf_result_vec2_abstract - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("modf", Call<vec2<Infer>>(1_a)); WrapInFunction(Decl(Var("v", Call("modf", Call<vec2<Infer>>(1_h)))), Assign("v", call)); ASSERT_TRUE(r()->Resolve()) << r()->error(); @@ -1405,7 +1405,7 @@ TEST_F(MaterializeAbstractStructure, Frexp_Scalar_ExplicitType) { // var v = frexp(1_h); // v is __frexp_result_f16 // v = frexp(1); // __frexp_result_f16 <- __frexp_result_abstract - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("frexp", 1_a); WrapInFunction(Decl(Var("v", Call("frexp", 1_h))), // Assign("v", call)); @@ -1426,7 +1426,7 @@ TEST_F(MaterializeAbstractStructure, Frexp_Vector_ExplicitType) { // var v = frexp(vec2(1_h)); // v is __frexp_result_vec2_f16 // v = frexp(vec2(1)); // __frexp_result_vec2_f16 <- __frexp_result_vec2_abstract - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* call = Call("frexp", Call<vec2<Infer>>(1_a)); WrapInFunction(Decl(Var("v", Call("frexp", Call<vec2<Infer>>(1_h)))), Assign("v", call)); ASSERT_TRUE(r()->Resolve()) << r()->error();
diff --git a/src/tint/lang/wgsl/resolver/override_test.cc b/src/tint/lang/wgsl/resolver/override_test.cc index 1e0a533..f575a4f 100644 --- a/src/tint/lang/wgsl/resolver/override_test.cc +++ b/src/tint/lang/wgsl/resolver/override_test.cc
@@ -66,7 +66,7 @@ } TEST_F(ResolverOverrideTest, WithAndWithoutIds) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Override("a", ty.f32(), Expr(1_f)); auto* b = Override("b", ty.f16(), Expr(1_h));
diff --git a/src/tint/lang/wgsl/resolver/pixel_local_extension_test.cc b/src/tint/lang/wgsl/resolver/pixel_local_extension_test.cc index 2c97b5d..2937d70 100644 --- a/src/tint/lang/wgsl/resolver/pixel_local_extension_test.cc +++ b/src/tint/lang/wgsl/resolver/pixel_local_extension_test.cc
@@ -29,7 +29,7 @@ // enable chromium_experimental_pixel_local; // struct S { a : i32 } // var<pixel_local> v : S; - Enable(Source{{12, 34}}, core::Extension::kChromiumExperimentalPixelLocal); + Enable(Source{{12, 34}}, wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("a", ty.i32())}); @@ -67,7 +67,7 @@ // _ = a.i; // _ = b.i; // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{1, 2}}, "a", ty("S"), core::AddressSpace::kPixelLocal); GlobalVar(Source{{3, 4}}, "b", ty("S"), core::AddressSpace::kPixelLocal); @@ -99,7 +99,7 @@ // uses_a(); // uses_b(); // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{1, 2}}, "a", ty("S"), core::AddressSpace::kPixelLocal); GlobalVar(Source{{3, 4}}, "b", ty("S"), core::AddressSpace::kPixelLocal); @@ -132,7 +132,7 @@ // v.i = 42; // return vec4f(); // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{56, 78}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func("F", Empty, ty.vec4<f32>(), @@ -157,7 +157,7 @@ // @compute @workgroup_size(1) fn F() { // v.i = 42; // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{56, 78}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func("F", Empty, ty.void_(), @@ -178,7 +178,7 @@ // @fragment fn F() { // v.i = 42; // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{56, 78}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func("F", Empty, ty.void_(), @@ -198,7 +198,7 @@ // X(); // return vec4f(); // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{3, 4}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func(Source{{5, 6}}, "X", Empty, ty.void_(), @@ -231,7 +231,7 @@ // @compute @workgroup_size(1) fn F() { // Y(); // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{3, 4}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func(Source{{5, 6}}, "X", Empty, ty.void_(), @@ -259,7 +259,7 @@ // @fragment fn F() { // Y(); // } - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{Member("i", ty.i32())}); GlobalVar(Source{{3, 4}}, "v", ty("S"), core::AddressSpace::kPixelLocal); Func(Source{{5, 6}}, "X", Empty, ty.void_(), @@ -297,7 +297,7 @@ TEST_P(ResolverPixelLocalExtensionTest_Types, Direct) { // var<pixel_local> v : <type>; - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); GlobalVar(Source{{12, 34}}, "v", GetParam().type(*this), core::AddressSpace::kPixelLocal); EXPECT_FALSE(r()->Resolve()); @@ -312,7 +312,7 @@ // } // var<pixel_local> v : S; - Enable(core::Extension::kChromiumExperimentalPixelLocal); + Enable(wgsl::Extension::kChromiumExperimentalPixelLocal); Structure("S", Vector{ Member("a", ty.i32()), Member(Source{{12, 34}}, "m", GetParam().type(*this)),
diff --git a/src/tint/lang/wgsl/resolver/resolver.cc b/src/tint/lang/wgsl/resolver/resolver.cc index df0c53d..3552a7c 100644 --- a/src/tint/lang/wgsl/resolver/resolver.cc +++ b/src/tint/lang/wgsl/resolver/resolver.cc
@@ -155,7 +155,7 @@ builder_->Sem().SetModule(mod); const bool disable_uniformity_analysis = - enabled_extensions_.Contains(core::Extension::kChromiumDisableUniformityAnalysis); + enabled_extensions_.Contains(wgsl::Extension::kChromiumDisableUniformityAnalysis); if (result && !disable_uniformity_analysis) { // Run the uniformity analysis, which requires a complete semantic module. if (!AnalyzeUniformity(builder_, dependencies_)) { @@ -1606,10 +1606,10 @@ } if (TINT_UNLIKELY( address_space_expr->Value() == core::AddressSpace::kPixelLocal && - !enabled_extensions_.Contains(core::Extension::kChromiumExperimentalPixelLocal))) { + !enabled_extensions_.Contains(wgsl::Extension::kChromiumExperimentalPixelLocal))) { StringStream err; err << "'pixel_local' address space requires the '" - << core::Extension::kChromiumExperimentalPixelLocal << "' extension enabled"; + << wgsl::Extension::kChromiumExperimentalPixelLocal << "' extension enabled"; AddError(err.str(), expr->source); return nullptr; } @@ -3973,28 +3973,28 @@ if (control.rule_name->category) { Mark(control.rule_name->category); if (control.rule_name->category->symbol.Name() == "chromium") { - auto rule = core::ParseChromiumDiagnosticRule(name); - if (rule != core::ChromiumDiagnosticRule::kUndefined) { + auto rule = wgsl::ParseChromiumDiagnosticRule(name); + if (rule != wgsl::ChromiumDiagnosticRule::kUndefined) { validator_.DiagnosticFilters().Set(rule, control.severity); } else { StringStream ss; ss << "unrecognized diagnostic rule 'chromium." << name << "'\n"; tint::SuggestAlternativeOptions opts; opts.prefix = "chromium."; - tint::SuggestAlternatives(name, core::kChromiumDiagnosticRuleStrings, ss, opts); + tint::SuggestAlternatives(name, wgsl::kChromiumDiagnosticRuleStrings, ss, opts); AddWarning(ss.str(), control.rule_name->source); } } return true; } - auto rule = core::ParseCoreDiagnosticRule(name); - if (rule != core::CoreDiagnosticRule::kUndefined) { + auto rule = wgsl::ParseCoreDiagnosticRule(name); + if (rule != wgsl::CoreDiagnosticRule::kUndefined) { validator_.DiagnosticFilters().Set(rule, control.severity); } else { StringStream ss; ss << "unrecognized diagnostic rule '" << name << "'\n"; - tint::SuggestAlternatives(name, core::kCoreDiagnosticRuleStrings, ss); + tint::SuggestAlternatives(name, wgsl::kCoreDiagnosticRuleStrings, ss); AddWarning(ss.str(), control.rule_name->source); } return true;
diff --git a/src/tint/lang/wgsl/resolver/resolver.h b/src/tint/lang/wgsl/resolver/resolver.h index 506beae..77b5d9e 100644 --- a/src/tint/lang/wgsl/resolver/resolver.h +++ b/src/tint/lang/wgsl/resolver/resolver.h
@@ -616,7 +616,7 @@ DependencyGraph dependencies_; SemHelper sem_; Validator validator_; - core::Extensions enabled_extensions_; + wgsl::Extensions enabled_extensions_; Vector<sem::Function*, 8> entry_points_; Hashmap<const core::type::Type*, const Source*, 8> atomic_composite_info_; tint::Bitset<0> marked_;
diff --git a/src/tint/lang/wgsl/resolver/side_effects_test.cc b/src/tint/lang/wgsl/resolver/side_effects_test.cc index cb3602c..ea3a68a 100644 --- a/src/tint/lang/wgsl/resolver/side_effects_test.cc +++ b/src/tint/lang/wgsl/resolver/side_effects_test.cc
@@ -16,10 +16,10 @@ #include "gtest/gtest.h" #include "src/tint/lang/core/address_space.h" -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/core/fluent_types.h" #include "src/tint/lang/core/texel_format.h" #include "src/tint/lang/core/type/texture_dimension.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/lang/wgsl/resolver/resolver_helper_test.h" #include "src/tint/lang/wgsl/sem/index_accessor_expression.h" #include "src/tint/lang/wgsl/sem/member_accessor_expression.h" @@ -167,7 +167,7 @@ using SideEffectsBuiltinTest = resolver::ResolverTestWithParam<Case>; TEST_P(SideEffectsBuiltinTest, Test) { - Enable(tint::core::Extension::kChromiumExperimentalDp4A); + Enable(tint::wgsl::Extension::kChromiumExperimentalDp4A); auto& c = GetParam(); uint32_t next_binding = 0;
diff --git a/src/tint/lang/wgsl/resolver/struct_layout_test.cc b/src/tint/lang/wgsl/resolver/struct_layout_test.cc index 529f673..a7904ab 100644 --- a/src/tint/lang/wgsl/resolver/struct_layout_test.cc +++ b/src/tint/lang/wgsl/resolver/struct_layout_test.cc
@@ -57,7 +57,7 @@ } TEST_F(ResolverStructLayoutTest, ScalarsWithF16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a", ty.f32()), @@ -136,7 +136,7 @@ } TEST_F(ResolverStructLayoutTest, ImplicitStrideArrayStaticSize) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a", ty.array<i32, 3>()), @@ -176,7 +176,7 @@ } TEST_F(ResolverStructLayoutTest, ExplicitStrideArrayStaticSize) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a", ty.array<i32, 3>(Vector{Stride(8)})), @@ -337,7 +337,7 @@ } TEST_F(ResolverStructLayoutTest, Matrix) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* s = Structure("S", Vector{ Member("a_1", ty.mat2x2<f32>()),
diff --git a/src/tint/lang/wgsl/resolver/subgroups_extension_test.cc b/src/tint/lang/wgsl/resolver/subgroups_extension_test.cc index b3f9c00..2a4ba1b 100644 --- a/src/tint/lang/wgsl/resolver/subgroups_extension_test.cc +++ b/src/tint/lang/wgsl/resolver/subgroups_extension_test.cc
@@ -54,7 +54,7 @@ // Using an i32 for a subgroup_size builtin input should fail. TEST_F(ResolverSubgroupsExtensionTest, SubgroupSizeI32Error) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Structure("Inputs", Vector{ Member("a", ty.i32(), Vector{Builtin(core::BuiltinValue::kSubgroupSize)}), @@ -66,7 +66,7 @@ // Using an i32 for a subgroup_invocation_id builtin input should fail. TEST_F(ResolverSubgroupsExtensionTest, SubgroupInvocationIdI32Error) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Structure("Inputs", Vector{ Member("a", ty.i32(), Vector{Builtin(core::BuiltinValue::kSubgroupInvocationId)}), @@ -78,7 +78,7 @@ // Using builtin(subgroup_size) for anything other than a compute shader input should fail. TEST_F(ResolverSubgroupsExtensionTest, SubgroupSizeFragmentShader) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("main", Vector{Param("size", ty.u32(), Vector{Builtin(core::BuiltinValue::kSubgroupSize)})}, ty.void_(), Empty, Vector{Stage(ast::PipelineStage::kFragment)}); @@ -90,7 +90,7 @@ // Using builtin(subgroup_invocation_id) for anything other than a compute shader input should fail. TEST_F(ResolverSubgroupsExtensionTest, SubgroupInvocationIdFragmentShader) { - Enable(core::Extension::kChromiumExperimentalSubgroups); + Enable(wgsl::Extension::kChromiumExperimentalSubgroups); Func("main", Vector{Param("id", ty.u32(), Vector{Builtin(core::BuiltinValue::kSubgroupInvocationId)})}, ty.void_(), Empty, Vector{Stage(ast::PipelineStage::kFragment)});
diff --git a/src/tint/lang/wgsl/resolver/type_validation_test.cc b/src/tint/lang/wgsl/resolver/type_validation_test.cc index bdc168c..46284e1 100644 --- a/src/tint/lang/wgsl/resolver/type_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/type_validation_test.cc
@@ -977,7 +977,7 @@ using SampledTextureTypeTest = ResolverTestWithParam<TypeParams>; TEST_P(SampledTextureTypeTest, All) { auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.sampled_texture(Source{{12, 34}}, core::type::TextureDimension::k2d, params.type_func(*this)), @@ -997,7 +997,7 @@ using MultisampledTextureTypeTest = ResolverTestWithParam<TypeParams>; TEST_P(MultisampledTextureTypeTest, All) { auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.multisampled_texture(Source{{12, 34}}, core::type::TextureDimension::k2d, params.type_func(*this)), @@ -1175,7 +1175,7 @@ // @group(0) @binding(0) // var a : texture_storage_1d<r32uint, read>; - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); auto st = ty.storage_texture(Source{{12, 34}}, core::type::TextureDimension::k1d, core::TexelFormat::kR32Uint, core::Access::kRead); @@ -1204,7 +1204,7 @@ // @group(0) @binding(0) // var a : texture_storage_1d<r32uint, read_write>; - Enable(core::Extension::kChromiumExperimentalReadWriteStorageTexture); + Enable(wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture); auto st = ty.storage_texture(Source{{12, 34}}, core::type::TextureDimension::k1d, core::TexelFormat::kR32Uint, core::Access::kReadWrite); @@ -1233,7 +1233,7 @@ // var a : matNxM<EL_TY>; auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ast::Type el_ty = params.elem_ty(*this); @@ -1273,7 +1273,7 @@ // var a : matNxM<EL_TY>; auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ast::Type el_ty = params.elem_ty(*this); @@ -1318,7 +1318,7 @@ // var a : vecN<EL_TY>; auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec(params.elem_ty(*this), params.width), core::AddressSpace::kPrivate); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -1352,7 +1352,7 @@ // var a : vecN<EL_TY>; auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("a", ty.vec(Source{{12, 34}}, params.elem_ty(*this), params.width), core::AddressSpace::kPrivate); @@ -1390,7 +1390,7 @@ // explicit = aliased; auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Var("aliased", ty(params.alias))), Decl(Var("explicit", params.type(*this))), // @@ -1402,7 +1402,7 @@ // var v : vecN<T> = vecTN(); auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Decl(Var("v", params.type(*this), Call(params.alias)))); EXPECT_TRUE(r()->Resolve()) << r()->error(); @@ -1450,7 +1450,7 @@ // enable f16; // var<private> v : f32<true>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); GlobalVar("v", core::AddressSpace::kPrivate, ty(Source{{12, 34}}, GetParam(), true)); EXPECT_FALSE(r()->Resolve()); @@ -1463,7 +1463,7 @@ // alias A = f32; // var<private> v : A<true>; - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Alias(Source{{56, 78}}, "A", ty(GetParam())); GlobalVar("v", core::AddressSpace::kPrivate, ty(Source{{12, 34}}, "A", true));
diff --git a/src/tint/lang/wgsl/resolver/uniformity.cc b/src/tint/lang/wgsl/resolver/uniformity.cc index 5550687..9b8385b 100644 --- a/src/tint/lang/wgsl/resolver/uniformity.cc +++ b/src/tint/lang/wgsl/resolver/uniformity.cc
@@ -78,7 +78,7 @@ CallSiteRequiredToBeUniform, CallSiteNoRestriction, } tag; - core::DiagnosticSeverity severity = core::DiagnosticSeverity::kUndefined; + wgsl::DiagnosticSeverity severity = wgsl::DiagnosticSeverity::kUndefined; }; /// FunctionTag describes a functions effects on uniformity. @@ -94,7 +94,7 @@ ParameterContentsRequiredToBeUniform, ParameterNoRestriction, } tag; - core::DiagnosticSeverity severity = core::DiagnosticSeverity::kUndefined; + wgsl::DiagnosticSeverity severity = wgsl::DiagnosticSeverity::kUndefined; }; /// Node represents a node in the graph of control flow and value nodes within the analysis of a @@ -264,13 +264,13 @@ }; /// @returns the RequiredToBeUniform node that corresponds to `severity` - Node* RequiredToBeUniform(core::DiagnosticSeverity severity) { + Node* RequiredToBeUniform(wgsl::DiagnosticSeverity severity) { switch (severity) { - case core::DiagnosticSeverity::kError: + case wgsl::DiagnosticSeverity::kError: return required_to_be_uniform_error; - case core::DiagnosticSeverity::kWarning: + case wgsl::DiagnosticSeverity::kWarning: return required_to_be_uniform_warning; - case core::DiagnosticSeverity::kInfo: + case wgsl::DiagnosticSeverity::kInfo: return required_to_be_uniform_info; default: TINT_UNREACHABLE() << "unhandled severity"; @@ -460,7 +460,7 @@ // Look at which nodes are reachable from "RequiredToBeUniform". { UniqueVector<Node*, 4> reachable; - auto traverse = [&](core::DiagnosticSeverity severity) { + auto traverse = [&](wgsl::DiagnosticSeverity severity) { Traverse(current_function_->RequiredToBeUniform(severity), &reachable); if (reachable.Contains(current_function_->may_be_non_uniform)) { MakeError(*current_function_, current_function_->may_be_non_uniform, severity); @@ -483,11 +483,11 @@ } return true; }; - if (!traverse(core::DiagnosticSeverity::kError)) { + if (!traverse(wgsl::DiagnosticSeverity::kError)) { return false; } else { - if (traverse(core::DiagnosticSeverity::kWarning)) { - traverse(core::DiagnosticSeverity::kInfo); + if (traverse(wgsl::DiagnosticSeverity::kWarning)) { + traverse(wgsl::DiagnosticSeverity::kInfo); } } } @@ -1537,8 +1537,8 @@ result->type = Node::kFunctionCallReturnValue; Node* cf_after = CreateNode({"CF_after_", name}, call); - auto default_severity = kUniformityFailuresAsError ? core::DiagnosticSeverity::kError - : core::DiagnosticSeverity::kWarning; + auto default_severity = kUniformityFailuresAsError ? wgsl::DiagnosticSeverity::kError + : wgsl::DiagnosticSeverity::kWarning; // Get tags for the callee. CallSiteTag callsite_tag = {CallSiteTag::CallSiteNoRestriction}; @@ -1560,8 +1560,8 @@ builtin->Type() == core::Function::kTextureSampleCompare) { // Get the severity of derivative uniformity violations in this context. auto severity = sem_.DiagnosticSeverity( - call, core::CoreDiagnosticRule::kDerivativeUniformity); - if (severity != core::DiagnosticSeverity::kOff) { + call, wgsl::CoreDiagnosticRule::kDerivativeUniformity); + if (severity != wgsl::DiagnosticSeverity::kOff) { callsite_tag = {CallSiteTag::CallSiteRequiredToBeUniform, severity}; } function_tag = ReturnValueMayBeNonUniform; @@ -1734,7 +1734,7 @@ /// order to find a call to a builtin function that requires uniformity with the given severity. const ast::CallExpression* FindBuiltinThatRequiresUniformity( const ast::CallExpression* call, - core::DiagnosticSeverity severity) { + wgsl::DiagnosticSeverity severity) { auto* target = SemCall(call)->Target(); if (target->Is<sem::Builtin>()) { // This is a call to a builtin, so we must be done. @@ -1893,11 +1893,11 @@ /// @param function the function that the diagnostic is being produced for /// @param source_node the node that has caused a uniformity issue in `function` /// @param severity the severity of the diagnostic - void MakeError(FunctionInfo& function, Node* source_node, core::DiagnosticSeverity severity) { + void MakeError(FunctionInfo& function, Node* source_node, wgsl::DiagnosticSeverity severity) { // Helper to produce a diagnostic message, as a note or with the global failure severity. auto report = [&](Source source, std::string msg, bool note) { diag::Diagnostic error{}; - error.severity = note ? diag::Severity::Note : core::ToSeverity(severity); + error.severity = note ? diag::Severity::Note : wgsl::ToSeverity(severity); error.system = diag::System::Resolver; error.source = source; error.message = msg;
diff --git a/src/tint/lang/wgsl/resolver/uniformity_test.cc b/src/tint/lang/wgsl/resolver/uniformity_test.cc index e7b7337..36568e9 100644 --- a/src/tint/lang/wgsl/resolver/uniformity_test.cc +++ b/src/tint/lang/wgsl/resolver/uniformity_test.cc
@@ -8329,16 +8329,16 @@ class UniformityAnalysisDiagnosticFilterTest : public UniformityAnalysisTestBase, - public ::testing::TestWithParam<core::DiagnosticSeverity> { + public ::testing::TestWithParam<wgsl::DiagnosticSeverity> { protected: // TODO(jrprice): Remove this in favour of tint::ToString() when we change "note" to "info". - const char* ToStr(core::DiagnosticSeverity severity) { + const char* ToStr(wgsl::DiagnosticSeverity severity) { switch (severity) { - case core::DiagnosticSeverity::kError: + case wgsl::DiagnosticSeverity::kError: return "error"; - case core::DiagnosticSeverity::kWarning: + case wgsl::DiagnosticSeverity::kWarning: return "warning"; - case core::DiagnosticSeverity::kInfo: + case wgsl::DiagnosticSeverity::kInfo: return "note"; default: return "<undefined>"; @@ -8362,9 +8362,9 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8390,8 +8390,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8416,8 +8416,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8439,8 +8439,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8462,8 +8462,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8485,8 +8485,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8511,8 +8511,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8534,8 +8534,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8560,8 +8560,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8587,8 +8587,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8614,8 +8614,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8641,8 +8641,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8668,8 +8668,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8695,8 +8695,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8722,8 +8722,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8746,8 +8746,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8774,8 +8774,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8802,8 +8802,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8825,8 +8825,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8851,8 +8851,8 @@ } )"; - RunTest(ss.str(), param != core::DiagnosticSeverity::kError); - if (param == core::DiagnosticSeverity::kOff) { + RunTest(ss.str(), param != wgsl::DiagnosticSeverity::kError); + if (param == wgsl::DiagnosticSeverity::kOff) { EXPECT_TRUE(error_.empty()); } else { StringStream err; @@ -8863,10 +8863,10 @@ INSTANTIATE_TEST_SUITE_P(UniformityAnalysisTest, UniformityAnalysisDiagnosticFilterTest, - ::testing::Values(core::DiagnosticSeverity::kError, - core::DiagnosticSeverity::kWarning, - core::DiagnosticSeverity::kInfo, - core::DiagnosticSeverity::kOff)); + ::testing::Values(wgsl::DiagnosticSeverity::kError, + wgsl::DiagnosticSeverity::kWarning, + wgsl::DiagnosticSeverity::kInfo, + wgsl::DiagnosticSeverity::kOff)); TEST_F(UniformityAnalysisDiagnosticFilterTest, AttributeOnFunction_CalledByAnotherFunction) { std::string src = R"(
diff --git a/src/tint/lang/wgsl/resolver/validator.cc b/src/tint/lang/wgsl/resolver/validator.cc index 235c625..c21c6d1 100644 --- a/src/tint/lang/wgsl/resolver/validator.cc +++ b/src/tint/lang/wgsl/resolver/validator.cc
@@ -151,7 +151,7 @@ Validator::Validator( ProgramBuilder* builder, SemHelper& sem, - const core::Extensions& enabled_extensions, + const wgsl::Extensions& enabled_extensions, const Hashmap<const core::type::Type*, const Source*, 8>& atomic_composite_info, Hashset<TypeAndAddressSpace, 8>& valid_type_storage_layouts) : symbols_(builder->Symbols()), @@ -161,10 +161,10 @@ atomic_composite_info_(atomic_composite_info), valid_type_storage_layouts_(valid_type_storage_layouts) { // Set default severities for filterable diagnostic rules. - diagnostic_filters_.Set(core::CoreDiagnosticRule::kDerivativeUniformity, - core::DiagnosticSeverity::kError); - diagnostic_filters_.Set(core::ChromiumDiagnosticRule::kUnreachableCode, - core::DiagnosticSeverity::kWarning); + diagnostic_filters_.Set(wgsl::CoreDiagnosticRule::kDerivativeUniformity, + wgsl::DiagnosticSeverity::kError); + diagnostic_filters_.Set(wgsl::ChromiumDiagnosticRule::kUnreachableCode, + wgsl::DiagnosticSeverity::kWarning); } Validator::~Validator() = default; @@ -181,18 +181,18 @@ diagnostics_.add_note(diag::System::Resolver, msg, source); } -bool Validator::AddDiagnostic(core::DiagnosticRule rule, +bool Validator::AddDiagnostic(wgsl::DiagnosticRule rule, const std::string& msg, const Source& source) const { auto severity = diagnostic_filters_.Get(rule); - if (severity != core::DiagnosticSeverity::kOff) { + if (severity != wgsl::DiagnosticSeverity::kOff) { diag::Diagnostic d{}; d.severity = ToSeverity(severity); d.system = diag::System::Resolver; d.source = source; d.message = msg; diagnostics_.add(std::move(d)); - if (severity == core::DiagnosticSeverity::kError) { + if (severity == wgsl::DiagnosticSeverity::kError) { return false; } } @@ -315,7 +315,7 @@ switch (t->access()) { case core::Access::kRead: if (!enabled_extensions_.Contains( - core::Extension::kChromiumExperimentalReadWriteStorageTexture)) { + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture)) { AddError( "read-only storage textures require the " "chromium_experimental_read_write_storage_texture extension to be enabled", @@ -325,7 +325,7 @@ break; case core::Access::kReadWrite: if (!enabled_extensions_.Contains( - core::Extension::kChromiumExperimentalReadWriteStorageTexture)) { + wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture)) { AddError( "read-write storage textures require the " "chromium_experimental_read_write_storage_texture extension to be enabled", @@ -472,7 +472,7 @@ // Validate that member is at a valid byte offset if (m->Offset() % required_align != 0 && !enabled_extensions_.Contains( - core::Extension::kChromiumInternalRelaxedUniformLayout)) { + wgsl::Extension::kChromiumInternalRelaxedUniformLayout)) { AddError("the offset of a struct member of type '" + m->Type()->UnwrapRef()->FriendlyName() + "' in address space '" + tint::ToString(address_space) + "' must be a multiple of " + @@ -500,7 +500,7 @@ const uint32_t prev_to_curr_offset = m->Offset() - prev_member->Offset(); if (prev_to_curr_offset % 16 != 0 && !enabled_extensions_.Contains( - core::Extension::kChromiumInternalRelaxedUniformLayout)) { + wgsl::Extension::kChromiumInternalRelaxedUniformLayout)) { AddError( "uniform storage requires that the number of bytes between the start of " "the previous member of type struct and the current member be a multiple " @@ -533,7 +533,7 @@ } if (address_space == core::AddressSpace::kUniform && - !enabled_extensions_.Contains(core::Extension::kChromiumInternalRelaxedUniformLayout)) { + !enabled_extensions_.Contains(wgsl::Extension::kChromiumInternalRelaxedUniformLayout)) { // We already validated that this array member is itself aligned to 16 bytes above, so // we only need to validate that stride is a multiple of 16 bytes. if (arr->Stride() % 16 != 0) { @@ -803,7 +803,7 @@ case core::AddressSpace::kUniform: case core::AddressSpace::kWorkgroup: ok = enabled_extensions_.Contains( - core::Extension::kChromiumExperimentalFullPtrParameters); + wgsl::Extension::kChromiumExperimentalFullPtrParameters); break; default: break; @@ -947,7 +947,7 @@ break; case core::BuiltinValue::kSubgroupInvocationId: case core::BuiltinValue::kSubgroupSize: - if (!enabled_extensions_.Contains(core::Extension::kChromiumExperimentalSubgroups)) { + if (!enabled_extensions_.Contains(wgsl::Extension::kChromiumExperimentalSubgroups)) { StringStream err; err << "use of @builtin(" << builtin << ") attribute requires enabling extension 'chromium_experimental_subgroups'"; @@ -1434,7 +1434,7 @@ bool Validator::Statements(VectorRef<const ast::Statement*> stmts) const { for (auto* stmt : stmts) { if (!sem_.Get(stmt)->IsReachable()) { - if (!AddDiagnostic(core::ChromiumDiagnosticRule::kUnreachableCode, + if (!AddDiagnostic(wgsl::ChromiumDiagnosticRule::kUnreachableCode, "code is unreachable", stmt->source)) { return false; } @@ -1740,7 +1740,7 @@ } const auto extension = builtin->RequiredExtension(); - if (extension == core::Extension::kUndefined) { + if (extension == wgsl::Extension::kUndefined) { return true; } @@ -1756,7 +1756,7 @@ bool Validator::CheckF16Enabled(const Source& source) const { // Validate if f16 type is allowed. - if (!enabled_extensions_.Contains(core::Extension::kF16)) { + if (!enabled_extensions_.Contains(wgsl::Extension::kF16)) { AddError("f16 type used without 'f16' extension enabled", source); return false; } @@ -1807,7 +1807,7 @@ if (param_type->Is<core::type::Pointer>() && !enabled_extensions_.Contains( - core::Extension::kChromiumExperimentalFullPtrParameters)) { + wgsl::Extension::kChromiumExperimentalFullPtrParameters)) { // https://gpuweb.github.io/gpuweb/wgsl/#function-restriction // Each argument of pointer type to a user-defined function must have the same memory // view as its root identifier. @@ -2294,7 +2294,7 @@ bool Validator::IndexAttribute(const ast::IndexAttribute* index_attr, ast::PipelineStage stage) const { - if (!enabled_extensions_.Contains(core::Extension::kChromiumInternalDualSourceBlending)) { + if (!enabled_extensions_.Contains(wgsl::Extension::kChromiumInternalDualSourceBlending)) { AddError( "use of '@index' attribute requires enabling extension " "'chromium_internal_dual_source_blending'", @@ -2658,7 +2658,7 @@ break; case core::AddressSpace::kPushConstant: if (TINT_UNLIKELY(!enabled_extensions_.Contains( - core::Extension::kChromiumExperimentalPushConstant) && + wgsl::Extension::kChromiumExperimentalPushConstant) && IsValidationEnabled(attributes, ast::DisabledValidation::kIgnoreAddressSpace))) { AddError(
diff --git a/src/tint/lang/wgsl/resolver/validator.h b/src/tint/lang/wgsl/resolver/validator.h index a4035a3..8e80916 100644 --- a/src/tint/lang/wgsl/resolver/validator.h +++ b/src/tint/lang/wgsl/resolver/validator.h
@@ -85,7 +85,7 @@ }; /// DiagnosticFilterStack is a scoped stack of diagnostic filters. -using DiagnosticFilterStack = ScopeStack<core::DiagnosticRule, core::DiagnosticSeverity>; +using DiagnosticFilterStack = ScopeStack<wgsl::DiagnosticRule, wgsl::DiagnosticSeverity>; /// Validation logic for various ast nodes. The validations in general should /// be shallow and depend on the resolver to call on children. The validations @@ -101,7 +101,7 @@ /// @param valid_type_storage_layouts a set of validated type layouts by address space Validator(ProgramBuilder* builder, SemHelper& helper, - const core::Extensions& enabled_extensions, + const wgsl::Extensions& enabled_extensions, const Hashmap<const core::type::Type*, const Source*, 8>& atomic_composite_info, Hashset<TypeAndAddressSpace, 8>& valid_type_storage_layouts); ~Validator(); @@ -126,7 +126,7 @@ /// @param msg the diagnostic message /// @param source the diagnostic source /// @returns false if the diagnostic is an error for the given trigger rule - bool AddDiagnostic(core::DiagnosticRule rule, + bool AddDiagnostic(wgsl::DiagnosticRule rule, const std::string& msg, const Source& source) const; @@ -566,7 +566,7 @@ diag::List& diagnostics_; SemHelper& sem_; DiagnosticFilterStack diagnostic_filters_; - const core::Extensions& enabled_extensions_; + const wgsl::Extensions& enabled_extensions_; const Hashmap<const core::type::Type*, const Source*, 8>& atomic_composite_info_; Hashset<TypeAndAddressSpace, 8>& valid_type_storage_layouts_; };
diff --git a/src/tint/lang/wgsl/resolver/value_constructor_validation_test.cc b/src/tint/lang/wgsl/resolver/value_constructor_validation_test.cc index 63fe3b1..0dcd3a1 100644 --- a/src/tint/lang/wgsl/resolver/value_constructor_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/value_constructor_validation_test.cc
@@ -79,7 +79,7 @@ // } auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* initializer_expr = params.create_rhs_ast_value(*this, 0); @@ -180,7 +180,7 @@ // } auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Func("foo", tint::Empty, params.create_rhs_ast_type(*this), Vector{Return(Call(params.create_rhs_ast_type(*this)))}, {}); @@ -337,7 +337,7 @@ TEST_P(ConversionConstructorValidTest, All) { auto& params = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // var a : <lhs_type1> = <lhs_type2>(<rhs_type>(<rhs_value_expr>)); auto lhs_type1 = params.lhs_type(*this); @@ -443,7 +443,7 @@ << FriendlyName(rhs_type) << "(<rhs value expr>))"; SCOPED_TRACE(ss.str()); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* a = Var("a", lhs_type1, Call(lhs_type2, Call(rhs_type, rhs_value_expr))); @@ -944,7 +944,7 @@ } TEST_F(ResolverValueConstructorValidationTest, F16_Success) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<f16>(Expr(1.5_h)); WrapInFunction(expr); @@ -1000,7 +1000,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Convert_u32_to_f16_Success) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<f16>(123_u); WrapInFunction(expr); @@ -1020,7 +1020,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Convert_f16_to_f32_Success) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* expr = Call<f32>(123_h); WrapInFunction(expr); @@ -1052,7 +1052,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec2F16_Error_ScalarArgumentTypeMismatch) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec2<f16>>(Source{{12, 34}}, 1_h, 2_f)); @@ -1175,7 +1175,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec2F16_Success_Scalar) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* tc = Call<vec2<f16>>(1_h, 1_h); WrapInFunction(tc); @@ -1309,7 +1309,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec3F16_Error_ScalarArgumentTypeMismatch) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(Source{{12, 34}}, 1_h, 2_h, 3_f)); @@ -1451,7 +1451,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec3F16_Success_Scalar) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* tc = Call<vec3<f16>>(1_h, 1_h, 1_h); WrapInFunction(tc); @@ -1632,7 +1632,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec4F16_Error_ScalarArgumentTypeMismatch) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec4<f16>>(Source{{12, 34}}, 1_h, 1_h, 1_f, 1_h)); @@ -1800,7 +1800,7 @@ } TEST_F(ResolverValueConstructorValidationTest, Vec4F16_Success_Scalar) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* tc = Call<vec4<f16>>(1_h, 1_h, 1_h, 1_h); WrapInFunction(tc); @@ -2036,7 +2036,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec2ElementTypeFromScalars) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec2_bool = Call<vec2<Infer>>(true, false); auto* vec2_i32 = Call<vec2<Infer>>(1_i, 2_i); @@ -2065,7 +2065,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec2ElementTypeFromVec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec2_bool = Call<vec2<Infer>>(Call<vec2<bool>>(true, false)); auto* vec2_i32 = Call<vec2<Infer>>(Call<vec2<i32>>(1_i, 2_i)); @@ -2094,7 +2094,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec3ElementTypeFromScalars) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec3_bool = Call<vec3<Infer>>(true, false, true); auto* vec3_i32 = Call<vec3<Infer>>(1_i, 2_i, 3_i); @@ -2123,7 +2123,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec3ElementTypeFromVec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec3_bool = Call<vec3<Infer>>(Call<vec3<bool>>(true, false, true)); auto* vec3_i32 = Call<vec3<Infer>>(Call<vec3<i32>>(1_i, 2_i, 3_i)); @@ -2152,7 +2152,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec3ElementTypeFromScalarAndVec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec3_bool = Call<vec3<Infer>>(true, Call<vec2<bool>>(false, true)); auto* vec3_i32 = Call<vec3<Infer>>(1_i, Call<vec2<i32>>(2_i, 3_i)); @@ -2181,7 +2181,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec4ElementTypeFromScalars) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec4_bool = Call<vec4<Infer>>(true, false, true, false); auto* vec4_i32 = Call<vec4<Infer>>(1_i, 2_i, 3_i, 4_i); @@ -2210,7 +2210,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec4ElementTypeFromVec4) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec4_bool = Call<vec4<Infer>>(Call<vec4<bool>>(true, false, true, false)); auto* vec4_i32 = Call<vec4<Infer>>(Call<vec4<i32>>(1_i, 2_i, 3_i, 4_i)); @@ -2239,7 +2239,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec4ElementTypeFromScalarAndVec3) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec4_bool = Call<vec4<Infer>>(true, Call<vec3<bool>>(false, true, false)); auto* vec4_i32 = Call<vec4<Infer>>(1_i, Call<vec3<i32>>(2_i, 3_i, 4_i)); @@ -2268,7 +2268,7 @@ } TEST_F(ResolverValueConstructorValidationTest, InferVec4ElementTypeFromVec2AndVec2) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* vec4_bool = Call<vec4<Infer>>(Call<vec2<bool>>(true, false), Call<vec2<bool>>(true, false)); @@ -2425,7 +2425,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2454,7 +2454,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2482,7 +2482,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2511,7 +2511,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2539,7 +2539,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); StringStream args_tys; Vector<const ast::Expression*, 8> args; @@ -2567,7 +2567,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); StringStream args_tys; Vector<const ast::Expression*, 8> args; @@ -2599,7 +2599,7 @@ return; } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2637,7 +2637,7 @@ return; } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); const std::string element_type_name = param.get_element_type_name(); StringStream args_tys; @@ -2669,7 +2669,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ast::Type matrix_type = param.create_mat_ast_type(*this); auto* tc = Call(Source{{12, 40}}, matrix_type); @@ -2684,7 +2684,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::Expression*, 4> args; for (uint32_t i = 0; i < param.columns; i++) { @@ -2705,7 +2705,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::Expression*, 16> args; for (uint32_t i = 0; i < param.columns * param.rows; i++) { @@ -2725,7 +2725,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* elem_type_alias = Alias("ElemType", param.create_element_ast_type(*this)); @@ -2755,7 +2755,7 @@ const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* elem_type_alias = Alias("ElemType", param.create_element_ast_type(*this)); @@ -2786,7 +2786,7 @@ TEST_P(MatrixConstructorTest, ArgumentTypeAlias_Success) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ast::Type matrix_type = param.create_mat_ast_type(*this); ast::Type vec_type = param.create_column_ast_type(*this); @@ -2806,7 +2806,7 @@ TEST_P(MatrixConstructorTest, ArgumentElementTypeAlias_Error) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); ast::Type matrix_type = param.create_mat_ast_type(*this); auto* u32_type_alias = Alias("UnsignedInt", ty.u32()); @@ -2833,7 +2833,7 @@ TEST_P(MatrixConstructorTest, ArgumentElementTypeAlias_Success) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* elem_type_alias = Alias("ElemType", param.create_element_ast_type(*this)); @@ -2853,7 +2853,7 @@ TEST_P(MatrixConstructorTest, InferElementTypeFromVectors) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::Expression*, 8> args; for (uint32_t i = 0; i < param.columns; i++) { @@ -2870,7 +2870,7 @@ TEST_P(MatrixConstructorTest, InferElementTypeFromScalars) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::Expression*, 8> args; for (uint32_t i = 0; i < param.rows * param.columns; i++) { @@ -2886,7 +2886,7 @@ TEST_P(MatrixConstructorTest, CannotInferElementTypeFromVectors_Mismatch) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); StringStream err; err << "12:34 error: no matching constructor for mat" << param.columns << "x" << param.rows @@ -2917,7 +2917,7 @@ TEST_P(MatrixConstructorTest, CannotInferElementTypeFromScalars_Mismatch) { const auto param = GetParam(); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); StringStream err; err << "12:34 error: no matching constructor for mat" << param.columns << "x" << param.rows @@ -3001,7 +3001,7 @@ auto& str_params = std::get<0>(param); uint32_t N = std::get<1>(param); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::StructMember*, 16> members; Vector<const ast::Expression*, 16> values; @@ -3026,7 +3026,7 @@ auto& str_params = std::get<0>(param); uint32_t N = std::get<1>(param); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); Vector<const ast::StructMember*, 16> members; Vector<const ast::Expression*, 8> values; @@ -3059,7 +3059,7 @@ auto& ctor_params = std::get<1>(param); uint32_t N = std::get<2>(param); - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); if (str_params.ast == ctor_params.ast) { return;
diff --git a/src/tint/lang/wgsl/resolver/variable_test.cc b/src/tint/lang/wgsl/resolver/variable_test.cc index 5951865..3e80a5e5 100644 --- a/src/tint/lang/wgsl/resolver/variable_test.cc +++ b/src/tint/lang/wgsl/resolver/variable_test.cc
@@ -42,7 +42,7 @@ // var a : A; // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* S = Structure("S", Vector{Member("i", ty.i32())}); auto* A = Alias("A", ty.Of(S)); @@ -107,7 +107,7 @@ // var a : A = A(1); // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* S = Structure("S", Vector{Member("i", ty.i32())}); auto* A = Alias("A", ty.Of(S)); @@ -400,7 +400,7 @@ // let p : pointer<function, i32> = &v; // } - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* S = Structure("S", Vector{Member("i", ty.i32())}); auto* A = Alias("A", ty.Of(S));
diff --git a/src/tint/lang/wgsl/resolver/variable_validation_test.cc b/src/tint/lang/wgsl/resolver/variable_validation_test.cc index 68d7b1e..cfcc146 100644 --- a/src/tint/lang/wgsl/resolver/variable_validation_test.cc +++ b/src/tint/lang/wgsl/resolver/variable_validation_test.cc
@@ -506,7 +506,7 @@ TEST_F(ResolverVariableValidationTest, GlobalVariable_PushConstantWithInitializer) { // enable chromium_experimental_push_constant; // var<push_constant> a : u32 = 0u; - Enable(core::Extension::kChromiumExperimentalPushConstant); + Enable(wgsl::Extension::kChromiumExperimentalPushConstant); GlobalVar(Source{{1u, 2u}}, "a", ty.u32(), core::AddressSpace::kPushConstant, Expr(Source{{3u, 4u}}, u32(0)));
diff --git a/src/tint/lang/wgsl/sem/BUILD.bazel b/src/tint/lang/wgsl/sem/BUILD.bazel index a8d4579..75b0dae 100644 --- a/src/tint/lang/wgsl/sem/BUILD.bazel +++ b/src/tint/lang/wgsl/sem/BUILD.bazel
@@ -99,6 +99,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/utils/containers", "//src/tint/utils/diagnostic", @@ -132,6 +133,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver",
diff --git a/src/tint/lang/wgsl/sem/BUILD.cmake b/src/tint/lang/wgsl/sem/BUILD.cmake index 11238c5..306ba36 100644 --- a/src/tint/lang/wgsl/sem/BUILD.cmake +++ b/src/tint/lang/wgsl/sem/BUILD.cmake
@@ -98,6 +98,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_utils_containers tint_utils_diagnostic @@ -131,6 +132,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver
diff --git a/src/tint/lang/wgsl/sem/BUILD.gn b/src/tint/lang/wgsl/sem/BUILD.gn index ae039c1..87f0a99 100644 --- a/src/tint/lang/wgsl/sem/BUILD.gn +++ b/src/tint/lang/wgsl/sem/BUILD.gn
@@ -102,6 +102,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/utils/containers", "${tint_src_dir}/utils/diagnostic", @@ -134,6 +135,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver",
diff --git a/src/tint/lang/wgsl/sem/builtin.cc b/src/tint/lang/wgsl/sem/builtin.cc index 3845778..a3e5fa5 100644 --- a/src/tint/lang/wgsl/sem/builtin.cc +++ b/src/tint/lang/wgsl/sem/builtin.cc
@@ -92,17 +92,17 @@ return core::HasSideEffects(type_); } -core::Extension Builtin::RequiredExtension() const { +wgsl::Extension Builtin::RequiredExtension() const { if (IsDP4a()) { - return core::Extension::kChromiumExperimentalDp4A; + return wgsl::Extension::kChromiumExperimentalDp4A; } if (IsSubgroup()) { - return core::Extension::kChromiumExperimentalSubgroups; + return wgsl::Extension::kChromiumExperimentalSubgroups; } if (type_ == core::Function::kTextureBarrier) { - return core::Extension::kChromiumExperimentalReadWriteStorageTexture; + return wgsl::Extension::kChromiumExperimentalReadWriteStorageTexture; } - return core::Extension::kUndefined; + return wgsl::Extension::kUndefined; } } // namespace tint::sem
diff --git a/src/tint/lang/wgsl/sem/builtin.h b/src/tint/lang/wgsl/sem/builtin.h index 64ee5c2..1d0ce97 100644 --- a/src/tint/lang/wgsl/sem/builtin.h +++ b/src/tint/lang/wgsl/sem/builtin.h
@@ -18,8 +18,8 @@ #include <string> #include <vector> -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/core/function.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/lang/wgsl/sem/call_target.h" #include "src/tint/lang/wgsl/sem/pipeline_stage_set.h" #include "src/tint/utils/math/hash.h" @@ -101,8 +101,8 @@ bool HasSideEffects() const; /// @returns the required extension of this builtin function. Returns - /// core::Extension::kNone if no extension is required. - core::Extension RequiredExtension() const; + /// wgsl::Extension::kNone if no extension is required. + wgsl::Extension RequiredExtension() const; private: const core::Function type_;
diff --git a/src/tint/lang/wgsl/sem/diagnostic_severity_test.cc b/src/tint/lang/wgsl/sem/diagnostic_severity_test.cc index 3a464e9..adb17f2 100644 --- a/src/tint/lang/wgsl/sem/diagnostic_severity_test.cc +++ b/src/tint/lang/wgsl/sem/diagnostic_severity_test.cc
@@ -27,7 +27,7 @@ /// using an attribute. Test that we correctly track the severity of the filter for the /// functions and the statements with them. /// @param global_severity the global severity of the "chromium.unreachable_code" filter - void Run(core::DiagnosticSeverity global_severity) { + void Run(wgsl::DiagnosticSeverity global_severity) { // @diagnostic(off, chromium.unreachable_code) // fn foo() { // @diagnostic(info, chromium.unreachable_code) { @@ -74,22 +74,22 @@ // fn bar() { // return; // } - auto rule = core::ChromiumDiagnosticRule::kUnreachableCode; - auto func_severity = core::DiagnosticSeverity::kOff; - auto block_severity = core::DiagnosticSeverity::kInfo; - auto if_severity = core::DiagnosticSeverity::kError; - auto if_body_severity = core::DiagnosticSeverity::kWarning; - auto else_body_severity = core::DiagnosticSeverity::kInfo; - auto switch_severity = core::DiagnosticSeverity::kError; - auto switch_body_severity = core::DiagnosticSeverity::kOff; - auto case_severity = core::DiagnosticSeverity::kWarning; - auto for_severity = core::DiagnosticSeverity::kError; - auto for_body_severity = core::DiagnosticSeverity::kWarning; - auto loop_severity = core::DiagnosticSeverity::kWarning; - auto loop_body_severity = core::DiagnosticSeverity::kOff; - auto continuing_severity = core::DiagnosticSeverity::kInfo; - auto while_severity = core::DiagnosticSeverity::kError; - auto while_body_severity = core::DiagnosticSeverity::kWarning; + auto rule = wgsl::ChromiumDiagnosticRule::kUnreachableCode; + auto func_severity = wgsl::DiagnosticSeverity::kOff; + auto block_severity = wgsl::DiagnosticSeverity::kInfo; + auto if_severity = wgsl::DiagnosticSeverity::kError; + auto if_body_severity = wgsl::DiagnosticSeverity::kWarning; + auto else_body_severity = wgsl::DiagnosticSeverity::kInfo; + auto switch_severity = wgsl::DiagnosticSeverity::kError; + auto switch_body_severity = wgsl::DiagnosticSeverity::kOff; + auto case_severity = wgsl::DiagnosticSeverity::kWarning; + auto for_severity = wgsl::DiagnosticSeverity::kError; + auto for_body_severity = wgsl::DiagnosticSeverity::kWarning; + auto loop_severity = wgsl::DiagnosticSeverity::kWarning; + auto loop_body_severity = wgsl::DiagnosticSeverity::kOff; + auto continuing_severity = wgsl::DiagnosticSeverity::kInfo; + auto while_severity = wgsl::DiagnosticSeverity::kError; + auto while_body_severity = wgsl::DiagnosticSeverity::kWarning; auto attr = [&](auto severity) { return tint::Vector{DiagnosticAttribute(severity, "chromium", "unreachable_code")}; }; @@ -173,12 +173,12 @@ }; TEST_F(DiagnosticSeverityTest, WithDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); - Run(core::DiagnosticSeverity::kError); + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + Run(wgsl::DiagnosticSeverity::kError); } TEST_F(DiagnosticSeverityTest, WithoutDirective) { - Run(core::DiagnosticSeverity::kWarning); + Run(wgsl::DiagnosticSeverity::kWarning); } } // namespace
diff --git a/src/tint/lang/wgsl/sem/function.h b/src/tint/lang/wgsl/sem/function.h index 5638dbd..c21a76e 100644 --- a/src/tint/lang/wgsl/sem/function.h +++ b/src/tint/lang/wgsl/sem/function.h
@@ -266,12 +266,12 @@ /// Modifies the severity of a specific diagnostic rule for this function. /// @param rule the diagnostic rule /// @param severity the new diagnostic severity - void SetDiagnosticSeverity(core::DiagnosticRule rule, core::DiagnosticSeverity severity) { + void SetDiagnosticSeverity(wgsl::DiagnosticRule rule, wgsl::DiagnosticSeverity severity) { diagnostic_severities_[rule] = severity; } /// @returns the diagnostic severity modifications applied to this function - const core::DiagnosticRuleSeverities& DiagnosticSeverities() const { + const wgsl::DiagnosticRuleSeverities& DiagnosticSeverities() const { return diagnostic_severities_; } @@ -295,7 +295,7 @@ std::vector<const Function*> ancestor_entry_points_; const Statement* discard_stmt_ = nullptr; sem::Behaviors behaviors_{sem::Behavior::kNext}; - core::DiagnosticRuleSeverities diagnostic_severities_; + wgsl::DiagnosticRuleSeverities diagnostic_severities_; std::optional<uint32_t> return_location_; std::optional<uint32_t> return_index_;
diff --git a/src/tint/lang/wgsl/sem/info.cc b/src/tint/lang/wgsl/sem/info.cc index 9ecc02d..f4bd839 100644 --- a/src/tint/lang/wgsl/sem/info.cc +++ b/src/tint/lang/wgsl/sem/info.cc
@@ -30,8 +30,8 @@ Info& Info::operator=(Info&&) = default; -core::DiagnosticSeverity Info::DiagnosticSeverity(const ast::Node* ast_node, - core::DiagnosticRule rule) const { +wgsl::DiagnosticSeverity Info::DiagnosticSeverity(const ast::Node* ast_node, + wgsl::DiagnosticRule rule) const { // Get the diagnostic severity modification for a node. auto check = [&](auto* node) { auto& severities = node->DiagnosticSeverities(); @@ -39,13 +39,13 @@ if (itr != severities.end()) { return itr->second; } - return core::DiagnosticSeverity::kUndefined; + return wgsl::DiagnosticSeverity::kUndefined; }; // Get the diagnostic severity modification for a function. auto check_func = [&](const sem::Function* func) { auto severity = check(func); - if (severity != core::DiagnosticSeverity::kUndefined) { + if (severity != wgsl::DiagnosticSeverity::kUndefined) { return severity; } @@ -58,7 +58,7 @@ // Walk up the statement hierarchy, checking for diagnostic severity modifications. while (true) { auto severity = check(stmt); - if (severity != core::DiagnosticSeverity::kUndefined) { + if (severity != wgsl::DiagnosticSeverity::kUndefined) { return severity; } if (!stmt->Parent()) { @@ -83,7 +83,7 @@ // Use the global severity set on the module. return check(module_); }); - TINT_ASSERT(severity != core::DiagnosticSeverity::kUndefined); + TINT_ASSERT(severity != wgsl::DiagnosticSeverity::kUndefined); return severity; }
diff --git a/src/tint/lang/wgsl/sem/info.h b/src/tint/lang/wgsl/sem/info.h index 3cdbc9a..5a41a3f 100644 --- a/src/tint/lang/wgsl/sem/info.h +++ b/src/tint/lang/wgsl/sem/info.h
@@ -161,8 +161,8 @@ /// @param ast_node the AST node /// @param rule the diagnostic rule /// @returns the severity of the rule for that AST node - core::DiagnosticSeverity DiagnosticSeverity(const ast::Node* ast_node, - core::DiagnosticRule rule) const; + wgsl::DiagnosticSeverity DiagnosticSeverity(const ast::Node* ast_node, + wgsl::DiagnosticRule rule) const; private: // AST node index to semantic node
diff --git a/src/tint/lang/wgsl/sem/module.cc b/src/tint/lang/wgsl/sem/module.cc index 29b2c70..8da89c8 100644 --- a/src/tint/lang/wgsl/sem/module.cc +++ b/src/tint/lang/wgsl/sem/module.cc
@@ -21,7 +21,7 @@ namespace tint::sem { -Module::Module(VectorRef<const ast::Node*> dep_ordered_decls, core::Extensions extensions) +Module::Module(VectorRef<const ast::Node*> dep_ordered_decls, wgsl::Extensions extensions) : dep_ordered_decls_(std::move(dep_ordered_decls)), extensions_(std::move(extensions)) {} Module::~Module() = default;
diff --git a/src/tint/lang/wgsl/sem/module.h b/src/tint/lang/wgsl/sem/module.h index d1cae6c..25b86db 100644 --- a/src/tint/lang/wgsl/sem/module.h +++ b/src/tint/lang/wgsl/sem/module.h
@@ -15,8 +15,8 @@ #ifndef SRC_TINT_LANG_WGSL_SEM_MODULE_H_ #define SRC_TINT_LANG_WGSL_SEM_MODULE_H_ -#include "src/tint/lang/core/extension.h" #include "src/tint/lang/wgsl/ast/diagnostic_control.h" +#include "src/tint/lang/wgsl/extension.h" #include "src/tint/lang/wgsl/sem/node.h" #include "src/tint/utils/containers/vector.h" @@ -34,7 +34,7 @@ /// Constructor /// @param dep_ordered_decls the dependency-ordered module-scope declarations /// @param extensions the list of enabled extensions in the module - Module(VectorRef<const ast::Node*> dep_ordered_decls, core::Extensions extensions); + Module(VectorRef<const ast::Node*> dep_ordered_decls, wgsl::Extensions extensions); /// Destructor ~Module() override; @@ -43,24 +43,24 @@ VectorRef<const ast::Node*> DependencyOrderedDeclarations() const { return dep_ordered_decls_; } /// @returns the list of enabled extensions in the module - const core::Extensions& Extensions() const { return extensions_; } + const wgsl::Extensions& Extensions() const { return extensions_; } /// Modifies the severity of a specific diagnostic rule for this module. /// @param rule the diagnostic rule /// @param severity the new diagnostic severity - void SetDiagnosticSeverity(core::DiagnosticRule rule, core::DiagnosticSeverity severity) { + void SetDiagnosticSeverity(wgsl::DiagnosticRule rule, wgsl::DiagnosticSeverity severity) { diagnostic_severities_[rule] = severity; } /// @returns the diagnostic severity modifications applied to this module - const core::DiagnosticRuleSeverities& DiagnosticSeverities() const { + const wgsl::DiagnosticRuleSeverities& DiagnosticSeverities() const { return diagnostic_severities_; } private: const tint::Vector<const ast::Node*, 64> dep_ordered_decls_; - core::Extensions extensions_; - core::DiagnosticRuleSeverities diagnostic_severities_; + wgsl::Extensions extensions_; + wgsl::DiagnosticRuleSeverities diagnostic_severities_; }; } // namespace tint::sem
diff --git a/src/tint/lang/wgsl/sem/statement.h b/src/tint/lang/wgsl/sem/statement.h index 133d00b..446ca8e 100644 --- a/src/tint/lang/wgsl/sem/statement.h +++ b/src/tint/lang/wgsl/sem/statement.h
@@ -113,12 +113,12 @@ /// Modifies the severity of a specific diagnostic rule for this statement. /// @param rule the diagnostic rule /// @param severity the new diagnostic severity - void SetDiagnosticSeverity(core::DiagnosticRule rule, core::DiagnosticSeverity severity) { + void SetDiagnosticSeverity(wgsl::DiagnosticRule rule, wgsl::DiagnosticSeverity severity) { diagnostic_severities_[rule] = severity; } /// @returns the diagnostic severity modifications applied to this statement - const core::DiagnosticRuleSeverities& DiagnosticSeverities() const { + const wgsl::DiagnosticRuleSeverities& DiagnosticSeverities() const { return diagnostic_severities_; } @@ -128,7 +128,7 @@ const sem::Function* const function_; sem::Behaviors behaviors_{sem::Behavior::kNext}; bool is_reachable_ = true; - core::DiagnosticRuleSeverities diagnostic_severities_; + wgsl::DiagnosticRuleSeverities diagnostic_severities_; }; /// CompoundStatement is the base class of statements that can hold other
diff --git a/src/tint/lang/wgsl/wgsl.def b/src/tint/lang/wgsl/wgsl.def new file mode 100644 index 0000000..0a40a81 --- /dev/null +++ b/src/tint/lang/wgsl/wgsl.def
@@ -0,0 +1,74 @@ +// Copyright 2021 The Tint Authors. +// +// 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. + +//////////////////////////////////////////////////////////////////////////////// +// WGSL builtin definition file // +// // +// This file is used to generate parts of the Tint BuiltinTable, various // +// enum definition files, as well as test .wgsl files. // +// // +// After modifying this file, run: // +// tools/run gen // +// from the Dawn source directory. // +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +// Enumerators // +//////////////////////////////////////////////////////////////////////////////// + +// https://gpuweb.github.io/gpuweb/wgsl/#filterable-triggering-rules +enum core_diagnostic_rule { + // Rules defined in the spec. + derivative_uniformity +} + +// chromium-specific diagnostics +enum chromium_diagnostic_rule { + // Chromium specific rules not defined in the spec. + unreachable_code +} + +// https://gpuweb.github.io/gpuweb/wgsl/#syntax-severity_control_name +enum diagnostic_severity { + error + warning + info + off +} + +// https://gpuweb.github.io/gpuweb/wgsl/#extension +enum extension { + // WGSL Extension "f16" + f16 + // An extension for the experimental feature "chromium_experimental_dp4a". + // See crbug.com/tint/1497 for more details + chromium_experimental_dp4a + // A Chromium-specific extension for disabling uniformity analysis. + chromium_disable_uniformity_analysis + // A Chromium-specific extension for push constants + chromium_experimental_push_constant + // A Chromium-specific extension that enables passing of uniform, storage and workgroup + // address-spaced pointers as parameters, as well as pointers into sub-objects. + chromium_experimental_full_ptr_parameters + // A Chromium-specific extension that adds support for read-write storage textures. + chromium_experimental_read_write_storage_texture + // A Chromium-specific extension that adds basic subgroup functionality. + chromium_experimental_subgroups + // A Chromium-specific extension that relaxes memory layout requirements for uniform storage. + chromium_internal_relaxed_uniform_layout + // A Chromium-specific extension that enables dual source blending. + chromium_internal_dual_source_blending + // A Chromium-specific extension that enables pixel local storage. + chromium_experimental_pixel_local +}
diff --git a/src/tint/lang/wgsl/writer/BUILD.bazel b/src/tint/lang/wgsl/writer/BUILD.bazel index 850e260..570230f 100644 --- a/src/tint/lang/wgsl/writer/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/BUILD.bazel
@@ -39,6 +39,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -72,6 +73,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/writer/BUILD.cmake b/src/tint/lang/wgsl/writer/BUILD.cmake index 0fdab06..4802da7 100644 --- a/src/tint/lang/wgsl/writer/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/BUILD.cmake
@@ -42,6 +42,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -76,6 +77,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/wgsl/writer/BUILD.gn b/src/tint/lang/wgsl/writer/BUILD.gn index cb47dbc..1bbf405 100644 --- a/src/tint/lang/wgsl/writer/BUILD.gn +++ b/src/tint/lang/wgsl/writer/BUILD.gn
@@ -38,6 +38,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel b/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel index 64c5a7b..b80b144 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel
@@ -35,6 +35,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem", @@ -97,6 +98,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver",
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake b/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake index 8004d94..96beb17 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake
@@ -34,6 +34,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem @@ -96,6 +97,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn b/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn index 7e2c123..dcdec55 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn
@@ -38,6 +38,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem", @@ -99,6 +100,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver",
diff --git a/src/tint/lang/wgsl/writer/ast_printer/cast_test.cc b/src/tint/lang/wgsl/writer/ast_printer/cast_test.cc index 93361dc..cfb6ae5 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/cast_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/cast_test.cc
@@ -38,7 +38,7 @@ } TEST_F(WgslASTPrinterTest, EmitExpression_Cast_Scalar_F16_From_I32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<f16>(1_i); WrapInFunction(cast); @@ -64,7 +64,7 @@ } TEST_F(WgslASTPrinterTest, EmitExpression_Cast_Vector_F16_From_I32) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* cast = Call<vec3<f16>>(Call<vec3<i32>>(1_i, 2_i, 3_i)); WrapInFunction(cast);
diff --git a/src/tint/lang/wgsl/writer/ast_printer/constructor_test.cc b/src/tint/lang/wgsl/writer/ast_printer/constructor_test.cc index 38026b9..260c3a7 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/constructor_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/constructor_test.cc
@@ -65,7 +65,7 @@ } TEST_F(WgslASTPrinterTest_Constructor, F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); // Use a number close to 1<<16 but whose decimal representation ends in 0. WrapInFunction(Expr(f16((1 << 15) - 8))); @@ -88,7 +88,7 @@ } TEST_F(WgslASTPrinterTest_Constructor, Type_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<f16>(Expr(-1.2e-5_h))); @@ -140,7 +140,7 @@ } TEST_F(WgslASTPrinterTest_Constructor, Type_Vec_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction(Call<vec3<f16>>(1_h, 2_h, 3_h)); @@ -164,7 +164,7 @@ } TEST_F(WgslASTPrinterTest_Constructor, Type_Mat_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); WrapInFunction( Call<mat2x3<f16>>(Call<vec3<f16>>(1_h, 2_h, 3_h), Call<vec3<f16>>(3_h, 4_h, 5_h)));
diff --git a/src/tint/lang/wgsl/writer/ast_printer/diagnostic_test.cc b/src/tint/lang/wgsl/writer/ast_printer/diagnostic_test.cc index df2b9cc..105a7b7 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/diagnostic_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/diagnostic_test.cc
@@ -22,7 +22,7 @@ using WgslASTPrinterTest = TestHelper; TEST_F(WgslASTPrinterTest, Emit_DiagnosticDirective) { - DiagnosticDirective(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + DiagnosticDirective(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); ASTPrinter& gen = Build(); gen.Generate(); @@ -34,7 +34,7 @@ TEST_F(WgslASTPrinterTest, Emit_DiagnosticAttribute) { auto* attr = - DiagnosticAttribute(core::DiagnosticSeverity::kError, "chromium", "unreachable_code"); + DiagnosticAttribute(wgsl::DiagnosticSeverity::kError, "chromium", "unreachable_code"); Func("foo", {}, ty.void_(), {}, Vector{attr}); ASTPrinter& gen = Build();
diff --git a/src/tint/lang/wgsl/writer/ast_printer/enable_test.cc b/src/tint/lang/wgsl/writer/ast_printer/enable_test.cc index 319db97..3791c99 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/enable_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/enable_test.cc
@@ -22,7 +22,7 @@ using WgslASTPrinterTest = TestHelper; TEST_F(WgslASTPrinterTest, Emit_Enable) { - auto* enable = Enable(core::Extension::kF16); + auto* enable = Enable(wgsl::Extension::kF16); ASTPrinter& gen = Build();
diff --git a/src/tint/lang/wgsl/writer/ast_printer/literal_test.cc b/src/tint/lang/wgsl/writer/ast_printer/literal_test.cc index 670d5eb..00378c7 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/literal_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/literal_test.cc
@@ -160,7 +160,7 @@ using WgslGenerator_F16LiteralTest = TestParamHelper<F16Data>; TEST_P(WgslGenerator_F16LiteralTest, Emit) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* v = Expr(GetParam().value);
diff --git a/src/tint/lang/wgsl/writer/ast_printer/type_test.cc b/src/tint/lang/wgsl/writer/ast_printer/type_test.cc index 6723673..cd2b55d 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/type_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/type_test.cc
@@ -98,7 +98,7 @@ } TEST_F(WgslASTPrinterTest, EmitType_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto type = Alias("make_type_reachable", ty.f16())->type; @@ -133,7 +133,7 @@ } TEST_F(WgslASTPrinterTest, EmitType_Matrix_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto type = Alias("make_type_reachable", ty.mat2x3<f16>())->type; @@ -388,7 +388,7 @@ } TEST_F(WgslASTPrinterTest, EmitType_Vector_F16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto type = Alias("make_type_reachable", ty.vec3<f16>())->type;
diff --git a/src/tint/lang/wgsl/writer/ast_printer/variable_decl_statement_test.cc b/src/tint/lang/wgsl/writer/ast_printer/variable_decl_statement_test.cc index fdc7339..5382fd6 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/variable_decl_statement_test.cc +++ b/src/tint/lang/wgsl/writer/ast_printer/variable_decl_statement_test.cc
@@ -146,7 +146,7 @@ } TEST_F(WgslASTPrinterTest, Emit_VariableDeclStatement_Const_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Expr(1_h)); Func("f", tint::Empty, ty.void_(), @@ -222,7 +222,7 @@ } TEST_F(WgslASTPrinterTest, Emit_VariableDeclStatement_Const_vec3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<vec3<f16>>(1_h, 2_h, 3_h)); Func("f", tint::Empty, ty.void_(), @@ -280,7 +280,7 @@ } TEST_F(WgslASTPrinterTest, Emit_VariableDeclStatement_Const_mat2x3_f16) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); auto* C = Const("C", Call<mat2x3<f16>>(1_h, 2_h, 3_h, 4_h, 5_h, 6_h)); Func("f", tint::Empty, ty.void_(),
diff --git a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.bazel b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.bazel index 0db88d9..09671ed 100644 --- a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.bazel
@@ -41,6 +41,7 @@ "//src/tint/lang/core/intrinsic/data", "//src/tint/lang/core/ir", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/resolver", @@ -80,6 +81,7 @@ "//src/tint/lang/core/ir", "//src/tint/lang/core/ir:test", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.cmake b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.cmake index ef8913c..4ac6bd8 100644 --- a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.cmake
@@ -40,6 +40,7 @@ tint_lang_core_intrinsic_data tint_lang_core_ir tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_resolver @@ -79,6 +80,7 @@ tint_lang_core_ir tint_lang_core_ir_test tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.gn b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.gn index 5dc5e9a..584fa6c 100644 --- a/src/tint/lang/wgsl/writer/ir_to_program/BUILD.gn +++ b/src/tint/lang/wgsl/writer/ir_to_program/BUILD.gn
@@ -44,6 +44,7 @@ "${tint_src_dir}/lang/core/intrinsic/data", "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/resolver", @@ -82,6 +83,7 @@ "${tint_src_dir}/lang/core/ir", "${tint_src_dir}/lang/core/ir:unittests", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/writer/ir_to_program/ir_to_program.cc b/src/tint/lang/wgsl/writer/ir_to_program/ir_to_program.cc index b32e60e..169ca8b 100644 --- a/src/tint/lang/wgsl/writer/ir_to_program/ir_to_program.cc +++ b/src/tint/lang/wgsl/writer/ir_to_program/ir_to_program.cc
@@ -176,7 +176,7 @@ Hashset<core::ir::Value*, 64> can_inline_; /// Set of enable directives emitted. - Hashset<core::Extension, 4> enables_; + Hashset<wgsl::Extension, 4> enables_; /// Map of struct to output program name. Hashmap<const core::type::Struct*, Symbol, 8> structs_; @@ -581,8 +581,8 @@ [&](core::ir::CoreBuiltinCall* c) { if (!disabled_derivative_uniformity_ && RequiresDerivativeUniformity(c->Func())) { // TODO(crbug.com/tint/1985): Be smarter about disabling derivative uniformity. - b.DiagnosticDirective(core::DiagnosticSeverity::kOff, - core::CoreDiagnosticRule::kDerivativeUniformity); + b.DiagnosticDirective(wgsl::DiagnosticSeverity::kOff, + wgsl::CoreDiagnosticRule::kDerivativeUniformity); disabled_derivative_uniformity_ = true; } @@ -826,7 +826,7 @@ [&](const core::type::U32*) { return b.Expr(c->ValueAs<u32>()); }, [&](const core::type::F32*) { return b.Expr(c->ValueAs<f32>()); }, [&](const core::type::F16*) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); return b.Expr(c->ValueAs<f16>()); }, [&](const core::type::Bool*) { return b.Expr(c->ValueAs<bool>()); }, @@ -840,7 +840,7 @@ }); } - void Enable(core::Extension ext) { + void Enable(wgsl::Extension ext) { if (enables_.Add(ext)) { b.Enable(ext); } @@ -866,7 +866,7 @@ [&](const core::type::I32*) { return b.ty.i32(); }, // [&](const core::type::U32*) { return b.ty.u32(); }, // [&](const core::type::F16*) { - Enable(core::Extension::kF16); + Enable(wgsl::Extension::kF16); return b.ty.f16(); }, [&](const core::type::F32*) { return b.ty.f32(); }, // @@ -954,7 +954,7 @@ ast_attrs.Push(b.Location(u32(*location))); } if (auto index = ir_attrs.index) { - Enable(core::Extension::kChromiumInternalDualSourceBlending); + Enable(wgsl::Extension::kChromiumInternalDualSourceBlending); ast_attrs.Push(b.Index(u32(*index))); } if (auto builtin = ir_attrs.builtin) {
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel index 6ec7c13..8009138 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel
@@ -35,6 +35,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake index 0a46c6e..d9353a4 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake
@@ -34,6 +34,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn index 0b604d8..16b77ae 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn
@@ -34,6 +34,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",
diff --git a/src/tint/utils/containers/BUILD.bazel b/src/tint/utils/containers/BUILD.bazel index c64b88a..c571f72 100644 --- a/src/tint/utils/containers/BUILD.bazel +++ b/src/tint/utils/containers/BUILD.bazel
@@ -78,6 +78,7 @@ "//src/tint/lang/core", "//src/tint/lang/core/constant", "//src/tint/lang/core/type", + "//src/tint/lang/wgsl", "//src/tint/lang/wgsl/ast", "//src/tint/lang/wgsl/program", "//src/tint/lang/wgsl/sem",
diff --git a/src/tint/utils/containers/BUILD.cmake b/src/tint/utils/containers/BUILD.cmake index 2cb4ff8..eaf1266 100644 --- a/src/tint/utils/containers/BUILD.cmake +++ b/src/tint/utils/containers/BUILD.cmake
@@ -77,6 +77,7 @@ tint_lang_core tint_lang_core_constant tint_lang_core_type + tint_lang_wgsl tint_lang_wgsl_ast tint_lang_wgsl_program tint_lang_wgsl_sem
diff --git a/src/tint/utils/containers/BUILD.gn b/src/tint/utils/containers/BUILD.gn index a912cce..b7cbe13b 100644 --- a/src/tint/utils/containers/BUILD.gn +++ b/src/tint/utils/containers/BUILD.gn
@@ -80,6 +80,7 @@ "${tint_src_dir}/lang/core", "${tint_src_dir}/lang/core/constant", "${tint_src_dir}/lang/core/type", + "${tint_src_dir}/lang/wgsl", "${tint_src_dir}/lang/wgsl/ast", "${tint_src_dir}/lang/wgsl/program", "${tint_src_dir}/lang/wgsl/sem",