| // Copyright 2024 The Dawn & Tint Authors |
| // |
| // Redistribution and use in source and binary forms, with or without |
| // modification, are permitted provided that the following conditions are met: |
| // |
| // 1. Redistributions of source code must retain the above copyright notice, this |
| // list of conditions and the following disclaimer. |
| // |
| // 2. Redistributions in binary form must reproduce the above copyright notice, |
| // this list of conditions and the following disclaimer in the documentation |
| // and/or other materials provided with the distribution. |
| // |
| // 3. Neither the name of the copyright holder nor the names of its |
| // contributors may be used to endorse or promote products derived from |
| // this software without specific prior written permission. |
| // |
| // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| // DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
| // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| // File generated by 'tools/src/cmd/gen' using the template: |
| // src/tint/lang/hlsl/intrinsic/data.cc.tmpl |
| // |
| // To regenerate run: './tools/run gen' |
| // |
| // Do not modify this file directly |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| #include <limits> |
| #include <string> |
| |
| #include "src/tint/lang/core/intrinsic/type_matchers.h" |
| #include "src/tint/lang/hlsl/intrinsic/dialect.h" |
| #include "src/tint/lang/hlsl/intrinsic/type_matchers.h" |
| #include "src/tint/utils/text/string_stream.h" |
| |
| namespace tint::hlsl::intrinsic { |
| |
| using namespace tint::core::intrinsic; // NOLINT(build/namespaces) |
| |
| namespace { |
| |
| using ConstEvalFunctionIndex = tint::core::intrinsic::ConstEvalFunctionIndex; |
| using IntrinsicInfo = tint::core::intrinsic::IntrinsicInfo; |
| using MatcherIndicesIndex = tint::core::intrinsic::MatcherIndicesIndex; |
| using MatchState = tint::core::intrinsic::MatchState; |
| using Number = tint::core::intrinsic::Number; |
| using NumberMatcher = tint::core::intrinsic::NumberMatcher; |
| using NumberMatcherIndex = tint::core::intrinsic::NumberMatcherIndex; |
| using OverloadFlag = tint::core::intrinsic::OverloadFlag; |
| using OverloadFlags = tint::core::intrinsic::OverloadFlags; |
| using OverloadIndex = tint::core::intrinsic::OverloadIndex; |
| using OverloadInfo = tint::core::intrinsic::OverloadInfo; |
| using ParameterIndex = tint::core::intrinsic::ParameterIndex; |
| using ParameterInfo = tint::core::intrinsic::ParameterInfo; |
| using StringStream = tint::StringStream; |
| using TemplateIndex = tint::core::intrinsic::TemplateIndex; |
| using Type = tint::core::type::Type; |
| using TypeMatcher = tint::core::intrinsic::TypeMatcher; |
| using TypeMatcherIndex = tint::core::intrinsic::TypeMatcherIndex; |
| |
| template <size_t N> |
| using TemplateNumberMatcher = tint::core::intrinsic::TemplateNumberMatcher<N>; |
| |
| template <size_t N> |
| using TemplateTypeMatcher = tint::core::intrinsic::TemplateTypeMatcher<N>; |
| |
| // clang-format off |
| |
| /// TypeMatcher for 'type i32' |
| constexpr TypeMatcher kI32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchI32(state, ty)) { |
| return nullptr; |
| } |
| return BuildI32(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("i32"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type u32' |
| constexpr TypeMatcher kU32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchU32(state, ty)) { |
| return nullptr; |
| } |
| return BuildU32(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("u32"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type f32' |
| constexpr TypeMatcher kF32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchF32(state, ty)) { |
| return nullptr; |
| } |
| return BuildF32(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("f32"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type f16' |
| constexpr TypeMatcher kF16Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchF16(state, ty)) { |
| return nullptr; |
| } |
| return BuildF16(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("f16"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type ptr' |
| constexpr TypeMatcher kPtrMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number S = Number::invalid; |
| const Type* T = nullptr; |
| Number A = Number::invalid; |
| if (!MatchPtr(state, ty, S, T, A)) { |
| return nullptr; |
| } |
| S = state.Num(S); |
| if (!S.IsValid()) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildPtr(state, ty, S, T, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText S; |
| state->PrintNum(S);StyledText T; |
| state->PrintType(T);StyledText A; |
| state->PrintNum(A); |
| out << style::Type("ptr", "<", S, ", ", T, ", ", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type vec2' |
| constexpr TypeMatcher kVec2Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchVec2(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildVec2(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("vec2", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type vec3' |
| constexpr TypeMatcher kVec3Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchVec3(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildVec3(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("vec3", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type vec4' |
| constexpr TypeMatcher kVec4Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchVec4(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildVec4(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("vec4", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type vec' |
| constexpr TypeMatcher kVecMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number N = Number::invalid; |
| const Type* T = nullptr; |
| if (!MatchVec(state, ty, N, T)) { |
| return nullptr; |
| } |
| N = state.Num(N); |
| if (!N.IsValid()) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildVec(state, ty, N, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText N; |
| state->PrintNum(N);StyledText T; |
| state->PrintType(T); |
| out << style::Type("vec", N, "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat2x2' |
| constexpr TypeMatcher kMat2X2Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat2X2(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat2X2(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat2x2", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat2x3' |
| constexpr TypeMatcher kMat2X3Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat2X3(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat2X3(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat2x3", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat2x4' |
| constexpr TypeMatcher kMat2X4Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat2X4(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat2X4(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat2x4", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat3x2' |
| constexpr TypeMatcher kMat3X2Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat3X2(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat3X2(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat3x2", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat3x3' |
| constexpr TypeMatcher kMat3X3Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat3X3(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat3X3(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat3x3", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat3x4' |
| constexpr TypeMatcher kMat3X4Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat3X4(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat3X4(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat3x4", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat4x2' |
| constexpr TypeMatcher kMat4X2Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat4X2(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat4X2(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat4x2", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat4x3' |
| constexpr TypeMatcher kMat4X3Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat4X3(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat4X3(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat4x3", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat4x4' |
| constexpr TypeMatcher kMat4X4Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchMat4X4(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat4X4(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat4x4", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type mat' |
| constexpr TypeMatcher kMatMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number N = Number::invalid; |
| Number M = Number::invalid; |
| const Type* T = nullptr; |
| if (!MatchMat(state, ty, N, M, T)) { |
| return nullptr; |
| } |
| N = state.Num(N); |
| if (!N.IsValid()) { |
| return nullptr; |
| } |
| M = state.Num(M); |
| if (!M.IsValid()) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildMat(state, ty, N, M, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText N; |
| state->PrintNum(N);StyledText M; |
| state->PrintNum(M);StyledText T; |
| state->PrintType(T); |
| out << style::Type("mat", N, "x", M, "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type atomic' |
| constexpr TypeMatcher kAtomicMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchAtomic(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildAtomic(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("atomic", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type byte_address_buffer' |
| constexpr TypeMatcher kByteAddressBufferMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number A = Number::invalid; |
| if (!MatchByteAddressBuffer(state, ty, A)) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildByteAddressBuffer(state, ty, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText A; |
| state->PrintNum(A); |
| out << style::Type("byte_address_buffer", "<", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type int8_t4_packed' |
| constexpr TypeMatcher kInt8T4PackedMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchInt8T4Packed(state, ty)) { |
| return nullptr; |
| } |
| return BuildInt8T4Packed(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("int8_t4_packed"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type uint8_t4_packed' |
| constexpr TypeMatcher kUint8T4PackedMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchUint8T4Packed(state, ty)) { |
| return nullptr; |
| } |
| return BuildUint8T4Packed(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("uint8_t4_packed"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type sampler' |
| constexpr TypeMatcher kSamplerMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchSampler(state, ty)) { |
| return nullptr; |
| } |
| return BuildSampler(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("sampler"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type sampler_comparison' |
| constexpr TypeMatcher kSamplerComparisonMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchSamplerComparison(state, ty)) { |
| return nullptr; |
| } |
| return BuildSamplerComparison(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("sampler_comparison"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_1d' |
| constexpr TypeMatcher kTexture1DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTexture1D(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTexture1D(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_1d", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_2d' |
| constexpr TypeMatcher kTexture2DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTexture2D(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTexture2D(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_2d", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_2d_array' |
| constexpr TypeMatcher kTexture2DArrayMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTexture2DArray(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTexture2DArray(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_2d_array", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_3d' |
| constexpr TypeMatcher kTexture3DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTexture3D(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTexture3D(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_3d", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_cube' |
| constexpr TypeMatcher kTextureCubeMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTextureCube(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTextureCube(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_cube", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_cube_array' |
| constexpr TypeMatcher kTextureCubeArrayMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTextureCubeArray(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTextureCubeArray(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_cube_array", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_depth_2d' |
| constexpr TypeMatcher kTextureDepth2DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchTextureDepth2D(state, ty)) { |
| return nullptr; |
| } |
| return BuildTextureDepth2D(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("texture_depth_2d"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_depth_2d_array' |
| constexpr TypeMatcher kTextureDepth2DArrayMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchTextureDepth2DArray(state, ty)) { |
| return nullptr; |
| } |
| return BuildTextureDepth2DArray(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("texture_depth_2d_array"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_depth_cube' |
| constexpr TypeMatcher kTextureDepthCubeMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchTextureDepthCube(state, ty)) { |
| return nullptr; |
| } |
| return BuildTextureDepthCube(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("texture_depth_cube"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_depth_cube_array' |
| constexpr TypeMatcher kTextureDepthCubeArrayMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchTextureDepthCubeArray(state, ty)) { |
| return nullptr; |
| } |
| return BuildTextureDepthCubeArray(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("texture_depth_cube_array"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_depth_multisampled_2d' |
| constexpr TypeMatcher kTextureDepthMultisampled2DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (!MatchTextureDepthMultisampled2D(state, ty)) { |
| return nullptr; |
| } |
| return BuildTextureDepthMultisampled2D(state, ty); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) { |
| out << style::Type("texture_depth_multisampled_2d"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_multisampled_2d' |
| constexpr TypeMatcher kTextureMultisampled2DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| const Type* T = nullptr; |
| if (!MatchTextureMultisampled2D(state, ty, T)) { |
| return nullptr; |
| } |
| T = state.Type(T); |
| if (T == nullptr) { |
| return nullptr; |
| } |
| return BuildTextureMultisampled2D(state, ty, T); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T; |
| state->PrintType(T); |
| out << style::Type("texture_multisampled_2d", "<", T, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_storage_1d' |
| constexpr TypeMatcher kTextureStorage1DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number F = Number::invalid; |
| Number A = Number::invalid; |
| if (!MatchTextureStorage1D(state, ty, F, A)) { |
| return nullptr; |
| } |
| F = state.Num(F); |
| if (!F.IsValid()) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildTextureStorage1D(state, ty, F, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F; |
| state->PrintNum(F);StyledText A; |
| state->PrintNum(A); |
| out << style::Type("texture_storage_1d", "<", F, ", ", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_storage_2d' |
| constexpr TypeMatcher kTextureStorage2DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number F = Number::invalid; |
| Number A = Number::invalid; |
| if (!MatchTextureStorage2D(state, ty, F, A)) { |
| return nullptr; |
| } |
| F = state.Num(F); |
| if (!F.IsValid()) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildTextureStorage2D(state, ty, F, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F; |
| state->PrintNum(F);StyledText A; |
| state->PrintNum(A); |
| out << style::Type("texture_storage_2d", "<", F, ", ", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_storage_2d_array' |
| constexpr TypeMatcher kTextureStorage2DArrayMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number F = Number::invalid; |
| Number A = Number::invalid; |
| if (!MatchTextureStorage2DArray(state, ty, F, A)) { |
| return nullptr; |
| } |
| F = state.Num(F); |
| if (!F.IsValid()) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildTextureStorage2DArray(state, ty, F, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F; |
| state->PrintNum(F);StyledText A; |
| state->PrintNum(A); |
| out << style::Type("texture_storage_2d_array", "<", F, ", ", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'type texture_storage_3d' |
| constexpr TypeMatcher kTextureStorage3DMatcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| Number F = Number::invalid; |
| Number A = Number::invalid; |
| if (!MatchTextureStorage3D(state, ty, F, A)) { |
| return nullptr; |
| } |
| F = state.Num(F); |
| if (!F.IsValid()) { |
| return nullptr; |
| } |
| A = state.Num(A); |
| if (!A.IsValid()) { |
| return nullptr; |
| } |
| return BuildTextureStorage3D(state, ty, F, A); |
| }, |
| /* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F; |
| state->PrintNum(F);StyledText A; |
| state->PrintNum(A); |
| out << style::Type("texture_storage_3d", "<", F, ", ", A, ">"); |
| } |
| }; |
| |
| |
| /// TypeMatcher for 'match iu32' |
| constexpr TypeMatcher kIu32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchI32(state, ty)) { |
| return BuildI32(state, ty); |
| } |
| if (MatchU32(state, ty)) { |
| return BuildU32(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kI32Matcher.print(nullptr, out); out << style::Plain(" or "); kU32Matcher.print(nullptr, out);} |
| }; |
| |
| /// TypeMatcher for 'match fiu32' |
| constexpr TypeMatcher kFiu32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchF32(state, ty)) { |
| return BuildF32(state, ty); |
| } |
| if (MatchI32(state, ty)) { |
| return BuildI32(state, ty); |
| } |
| if (MatchU32(state, ty)) { |
| return BuildU32(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kF32Matcher.print(nullptr, out); out << style::Plain(", "); kI32Matcher.print(nullptr, out); out << style::Plain(" or "); kU32Matcher.print(nullptr, out);} |
| }; |
| |
| /// TypeMatcher for 'match f32_u32' |
| constexpr TypeMatcher kF32U32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchF32(state, ty)) { |
| return BuildF32(state, ty); |
| } |
| if (MatchU32(state, ty)) { |
| return BuildU32(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kF32Matcher.print(nullptr, out); out << style::Plain(" or "); kU32Matcher.print(nullptr, out);} |
| }; |
| |
| /// TypeMatcher for 'match f32_i32' |
| constexpr TypeMatcher kF32I32Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchF32(state, ty)) { |
| return BuildF32(state, ty); |
| } |
| if (MatchI32(state, ty)) { |
| return BuildI32(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kF32Matcher.print(nullptr, out); out << style::Plain(" or "); kI32Matcher.print(nullptr, out);} |
| }; |
| |
| /// TypeMatcher for 'match f32_f16' |
| constexpr TypeMatcher kF32F16Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchF32(state, ty)) { |
| return BuildF32(state, ty); |
| } |
| if (MatchF16(state, ty)) { |
| return BuildF16(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kF32Matcher.print(nullptr, out); out << style::Plain(" or "); kF16Matcher.print(nullptr, out);} |
| }; |
| |
| /// TypeMatcher for 'match fi32_f16' |
| constexpr TypeMatcher kFi32F16Matcher { |
| /* match */ [](MatchState& state, const Type* ty) -> const Type* { |
| if (MatchF32(state, ty)) { |
| return BuildF32(state, ty); |
| } |
| if (MatchI32(state, ty)) { |
| return BuildI32(state, ty); |
| } |
| if (MatchF16(state, ty)) { |
| return BuildF16(state, ty); |
| } |
| return nullptr; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support |
| // template arguments, nor can they match sub-types. As such, they have no use for the MatchState. |
| kF32Matcher.print(nullptr, out); out << style::Plain(", "); kI32Matcher.print(nullptr, out); out << style::Plain(" or "); kF16Matcher.print(nullptr, out);} |
| }; |
| |
| /// EnumMatcher for 'match storage' |
| constexpr NumberMatcher kStorageMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| if (number.IsAny() || number.Value() == static_cast<uint32_t>(core::AddressSpace::kStorage)) { |
| return Number(static_cast<uint32_t>(core::AddressSpace::kStorage)); |
| } |
| return Number::invalid; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("storage"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match function' |
| constexpr NumberMatcher kFunctionMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| if (number.IsAny() || number.Value() == static_cast<uint32_t>(core::AddressSpace::kFunction)) { |
| return Number(static_cast<uint32_t>(core::AddressSpace::kFunction)); |
| } |
| return Number::invalid; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("function"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match workgroup' |
| constexpr NumberMatcher kWorkgroupMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| if (number.IsAny() || number.Value() == static_cast<uint32_t>(core::AddressSpace::kWorkgroup)) { |
| return Number(static_cast<uint32_t>(core::AddressSpace::kWorkgroup)); |
| } |
| return Number::invalid; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("workgroup"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match read_write' |
| constexpr NumberMatcher kReadWriteMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| if (number.IsAny() || number.Value() == static_cast<uint32_t>(core::Access::kReadWrite)) { |
| return Number(static_cast<uint32_t>(core::Access::kReadWrite)); |
| } |
| return Number::invalid; |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("read_write"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match readable' |
| constexpr NumberMatcher kReadableMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| switch (static_cast<core::Access>(number.Value())) { |
| case core::Access::kRead: |
| case core::Access::kReadWrite: |
| return number; |
| default: |
| return Number::invalid; |
| } |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("read")<< style::Plain(" or ") << style::Enum("read_write"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match writable' |
| constexpr NumberMatcher kWritableMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| switch (static_cast<core::Access>(number.Value())) { |
| case core::Access::kWrite: |
| case core::Access::kReadWrite: |
| return number; |
| default: |
| return Number::invalid; |
| } |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("write")<< style::Plain(" or ") << style::Enum("read_write"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match f32_texel_format' |
| constexpr NumberMatcher kF32TexelFormatMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| switch (static_cast<core::TexelFormat>(number.Value())) { |
| case core::TexelFormat::kR8Unorm: |
| case core::TexelFormat::kBgra8Unorm: |
| case core::TexelFormat::kRgba8Unorm: |
| case core::TexelFormat::kRgba8Snorm: |
| case core::TexelFormat::kRgba16Float: |
| case core::TexelFormat::kR32Float: |
| case core::TexelFormat::kRg32Float: |
| case core::TexelFormat::kRgba32Float: |
| return number; |
| default: |
| return Number::invalid; |
| } |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("r8unorm")<< style::Plain(", ") << style::Enum("bgra8unorm")<< style::Plain(", ") << style::Enum("rgba8unorm")<< style::Plain(", ") << style::Enum("rgba8snorm")<< style::Plain(", ") << style::Enum("rgba16float")<< style::Plain(", ") << style::Enum("r32float")<< style::Plain(", ") << style::Enum("rg32float")<< style::Plain(" or ") << style::Enum("rgba32float"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match u32_texel_format' |
| constexpr NumberMatcher kU32TexelFormatMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| switch (static_cast<core::TexelFormat>(number.Value())) { |
| case core::TexelFormat::kRgba8Uint: |
| case core::TexelFormat::kRgba16Uint: |
| case core::TexelFormat::kR32Uint: |
| case core::TexelFormat::kRg32Uint: |
| case core::TexelFormat::kRgba32Uint: |
| return number; |
| default: |
| return Number::invalid; |
| } |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("rgba8uint")<< style::Plain(", ") << style::Enum("rgba16uint")<< style::Plain(", ") << style::Enum("r32uint")<< style::Plain(", ") << style::Enum("rg32uint")<< style::Plain(" or ") << style::Enum("rgba32uint"); |
| } |
| }; |
| |
| /// EnumMatcher for 'match i32_texel_format' |
| constexpr NumberMatcher kI32TexelFormatMatcher { |
| /* match */ [](MatchState&, Number number) -> Number { |
| switch (static_cast<core::TexelFormat>(number.Value())) { |
| case core::TexelFormat::kRgba8Sint: |
| case core::TexelFormat::kRgba16Sint: |
| case core::TexelFormat::kR32Sint: |
| case core::TexelFormat::kRg32Sint: |
| case core::TexelFormat::kRgba32Sint: |
| return number; |
| default: |
| return Number::invalid; |
| } |
| }, |
| /* print */ [](MatchState*, StyledText& out) { |
| out<< style::Enum("rgba8sint")<< style::Plain(", ") << style::Enum("rgba16sint")<< style::Plain(", ") << style::Enum("r32sint")<< style::Plain(", ") << style::Enum("rg32sint")<< style::Plain(" or ") << style::Enum("rgba32sint"); |
| } |
| }; |
| |
| /// Type and number matchers |
| |
| /// The template types, types, and type matchers |
| constexpr TypeMatcher kTypeMatchers[] = { |
| /* [0] */ TemplateTypeMatcher<0>::matcher, |
| /* [1] */ TemplateTypeMatcher<1>::matcher, |
| /* [2] */ TemplateTypeMatcher<2>::matcher, |
| /* [3] */ TemplateTypeMatcher<3>::matcher, |
| /* [4] */ kI32Matcher, |
| /* [5] */ kU32Matcher, |
| /* [6] */ kF32Matcher, |
| /* [7] */ kF16Matcher, |
| /* [8] */ kPtrMatcher, |
| /* [9] */ kVec2Matcher, |
| /* [10] */ kVec3Matcher, |
| /* [11] */ kVec4Matcher, |
| /* [12] */ kVecMatcher, |
| /* [13] */ kMat2X2Matcher, |
| /* [14] */ kMat2X3Matcher, |
| /* [15] */ kMat2X4Matcher, |
| /* [16] */ kMat3X2Matcher, |
| /* [17] */ kMat3X3Matcher, |
| /* [18] */ kMat3X4Matcher, |
| /* [19] */ kMat4X2Matcher, |
| /* [20] */ kMat4X3Matcher, |
| /* [21] */ kMat4X4Matcher, |
| /* [22] */ kMatMatcher, |
| /* [23] */ kAtomicMatcher, |
| /* [24] */ kByteAddressBufferMatcher, |
| /* [25] */ kInt8T4PackedMatcher, |
| /* [26] */ kUint8T4PackedMatcher, |
| /* [27] */ kSamplerMatcher, |
| /* [28] */ kSamplerComparisonMatcher, |
| /* [29] */ kTexture1DMatcher, |
| /* [30] */ kTexture2DMatcher, |
| /* [31] */ kTexture2DArrayMatcher, |
| /* [32] */ kTexture3DMatcher, |
| /* [33] */ kTextureCubeMatcher, |
| /* [34] */ kTextureCubeArrayMatcher, |
| /* [35] */ kTextureDepth2DMatcher, |
| /* [36] */ kTextureDepth2DArrayMatcher, |
| /* [37] */ kTextureDepthCubeMatcher, |
| /* [38] */ kTextureDepthCubeArrayMatcher, |
| /* [39] */ kTextureDepthMultisampled2DMatcher, |
| /* [40] */ kTextureMultisampled2DMatcher, |
| /* [41] */ kTextureStorage1DMatcher, |
| /* [42] */ kTextureStorage2DMatcher, |
| /* [43] */ kTextureStorage2DArrayMatcher, |
| /* [44] */ kTextureStorage3DMatcher, |
| /* [45] */ kIu32Matcher, |
| /* [46] */ kFiu32Matcher, |
| /* [47] */ kF32U32Matcher, |
| /* [48] */ kF32I32Matcher, |
| /* [49] */ kF32F16Matcher, |
| /* [50] */ kFi32F16Matcher, |
| }; |
| |
| /// The template numbers, and number matchers |
| constexpr NumberMatcher kNumberMatchers[] = { |
| /* [0] */ TemplateNumberMatcher<0>::matcher, |
| /* [1] */ TemplateNumberMatcher<1>::matcher, |
| /* [2] */ TemplateNumberMatcher<2>::matcher, |
| /* [3] */ TemplateNumberMatcher<3>::matcher, |
| /* [4] */ kStorageMatcher, |
| /* [5] */ kFunctionMatcher, |
| /* [6] */ kWorkgroupMatcher, |
| /* [7] */ kReadWriteMatcher, |
| /* [8] */ kReadableMatcher, |
| /* [9] */ kWritableMatcher, |
| /* [10] */ kF32TexelFormatMatcher, |
| /* [11] */ kU32TexelFormatMatcher, |
| /* [12] */ kI32TexelFormatMatcher, |
| }; |
| |
| constexpr MatcherIndex kMatcherIndices[] = { |
| /* [0] */ MatcherIndex(24), |
| /* [1] */ MatcherIndex(8), |
| /* [2] */ MatcherIndex(6), |
| /* [3] */ MatcherIndex(23), |
| /* [4] */ MatcherIndex(0), |
| /* [5] */ MatcherIndex(7), |
| /* [6] */ MatcherIndex(8), |
| /* [7] */ MatcherIndex(5), |
| /* [8] */ MatcherIndex(4), |
| /* [9] */ MatcherIndex(9), |
| /* [10] */ MatcherIndex(0), |
| /* [11] */ MatcherIndex(8), |
| /* [12] */ MatcherIndex(5), |
| /* [13] */ MatcherIndex(5), |
| /* [14] */ MatcherIndex(9), |
| /* [15] */ MatcherIndex(4), |
| /* [16] */ MatcherIndex(8), |
| /* [17] */ MatcherIndex(5), |
| /* [18] */ MatcherIndex(45), |
| /* [19] */ MatcherIndex(7), |
| /* [20] */ MatcherIndex(22), |
| /* [21] */ MatcherIndex(2), |
| /* [22] */ MatcherIndex(1), |
| /* [23] */ MatcherIndex(0), |
| /* [24] */ MatcherIndex(22), |
| /* [25] */ MatcherIndex(3), |
| /* [26] */ MatcherIndex(2), |
| /* [27] */ MatcherIndex(0), |
| /* [28] */ MatcherIndex(22), |
| /* [29] */ MatcherIndex(3), |
| /* [30] */ MatcherIndex(1), |
| /* [31] */ MatcherIndex(0), |
| /* [32] */ MatcherIndex(22), |
| /* [33] */ MatcherIndex(1), |
| /* [34] */ MatcherIndex(2), |
| /* [35] */ MatcherIndex(0), |
| /* [36] */ MatcherIndex(12), |
| /* [37] */ MatcherIndex(1), |
| /* [38] */ MatcherIndex(4), |
| /* [39] */ MatcherIndex(12), |
| /* [40] */ MatcherIndex(1), |
| /* [41] */ MatcherIndex(0), |
| /* [42] */ MatcherIndex(12), |
| /* [43] */ MatcherIndex(1), |
| /* [44] */ MatcherIndex(5), |
| /* [45] */ MatcherIndex(12), |
| /* [46] */ MatcherIndex(1), |
| /* [47] */ MatcherIndex(6), |
| /* [48] */ MatcherIndex(12), |
| /* [49] */ MatcherIndex(0), |
| /* [50] */ MatcherIndex(5), |
| /* [51] */ MatcherIndex(12), |
| /* [52] */ MatcherIndex(0), |
| /* [53] */ MatcherIndex(6), |
| /* [54] */ MatcherIndex(12), |
| /* [55] */ MatcherIndex(2), |
| /* [56] */ MatcherIndex(0), |
| /* [57] */ MatcherIndex(12), |
| /* [58] */ MatcherIndex(0), |
| /* [59] */ MatcherIndex(4), |
| /* [60] */ MatcherIndex(12), |
| /* [61] */ MatcherIndex(0), |
| /* [62] */ MatcherIndex(1), |
| /* [63] */ MatcherIndex(41), |
| /* [64] */ MatcherIndex(10), |
| /* [65] */ MatcherIndex(9), |
| /* [66] */ MatcherIndex(5), |
| /* [67] */ MatcherIndex(42), |
| /* [68] */ MatcherIndex(10), |
| /* [69] */ MatcherIndex(9), |
| /* [70] */ MatcherIndex(7), |
| /* [71] */ MatcherIndex(43), |
| /* [72] */ MatcherIndex(10), |
| /* [73] */ MatcherIndex(9), |
| /* [74] */ MatcherIndex(6), |
| /* [75] */ MatcherIndex(44), |
| /* [76] */ MatcherIndex(10), |
| /* [77] */ MatcherIndex(9), |
| /* [78] */ MatcherIndex(41), |
| /* [79] */ MatcherIndex(12), |
| /* [80] */ MatcherIndex(9), |
| /* [81] */ MatcherIndex(42), |
| /* [82] */ MatcherIndex(12), |
| /* [83] */ MatcherIndex(9), |
| /* [84] */ MatcherIndex(43), |
| /* [85] */ MatcherIndex(12), |
| /* [86] */ MatcherIndex(9), |
| /* [87] */ MatcherIndex(44), |
| /* [88] */ MatcherIndex(12), |
| /* [89] */ MatcherIndex(9), |
| /* [90] */ MatcherIndex(41), |
| /* [91] */ MatcherIndex(11), |
| /* [92] */ MatcherIndex(9), |
| /* [93] */ MatcherIndex(42), |
| /* [94] */ MatcherIndex(11), |
| /* [95] */ MatcherIndex(9), |
| /* [96] */ MatcherIndex(43), |
| /* [97] */ MatcherIndex(11), |
| /* [98] */ MatcherIndex(9), |
| /* [99] */ MatcherIndex(44), |
| /* [100] */ MatcherIndex(11), |
| /* [101] */ MatcherIndex(9), |
| /* [102] */ MatcherIndex(41), |
| /* [103] */ MatcherIndex(0), |
| /* [104] */ MatcherIndex(1), |
| /* [105] */ MatcherIndex(42), |
| /* [106] */ MatcherIndex(0), |
| /* [107] */ MatcherIndex(1), |
| /* [108] */ MatcherIndex(43), |
| /* [109] */ MatcherIndex(0), |
| /* [110] */ MatcherIndex(1), |
| /* [111] */ MatcherIndex(44), |
| /* [112] */ MatcherIndex(0), |
| /* [113] */ MatcherIndex(1), |
| /* [114] */ MatcherIndex(24), |
| /* [115] */ MatcherIndex(7), |
| /* [116] */ MatcherIndex(11), |
| /* [117] */ MatcherIndex(5), |
| /* [118] */ MatcherIndex(11), |
| /* [119] */ MatcherIndex(4), |
| /* [120] */ MatcherIndex(11), |
| /* [121] */ MatcherIndex(6), |
| /* [122] */ MatcherIndex(10), |
| /* [123] */ MatcherIndex(0), |
| /* [124] */ MatcherIndex(11), |
| /* [125] */ MatcherIndex(0), |
| /* [126] */ MatcherIndex(29), |
| /* [127] */ MatcherIndex(0), |
| /* [128] */ MatcherIndex(30), |
| /* [129] */ MatcherIndex(0), |
| /* [130] */ MatcherIndex(10), |
| /* [131] */ MatcherIndex(4), |
| /* [132] */ MatcherIndex(31), |
| /* [133] */ MatcherIndex(0), |
| /* [134] */ MatcherIndex(40), |
| /* [135] */ MatcherIndex(0), |
| /* [136] */ MatcherIndex(32), |
| /* [137] */ MatcherIndex(0), |
| /* [138] */ MatcherIndex(10), |
| /* [139] */ MatcherIndex(5), |
| /* [140] */ MatcherIndex(10), |
| /* [141] */ MatcherIndex(7), |
| /* [142] */ MatcherIndex(11), |
| /* [143] */ MatcherIndex(7), |
| /* [144] */ MatcherIndex(24), |
| /* [145] */ MatcherIndex(9), |
| /* [146] */ MatcherIndex(10), |
| /* [147] */ MatcherIndex(6), |
| /* [148] */ MatcherIndex(33), |
| /* [149] */ MatcherIndex(0), |
| /* [150] */ MatcherIndex(34), |
| /* [151] */ MatcherIndex(0), |
| /* [152] */ MatcherIndex(24), |
| /* [153] */ MatcherIndex(0), |
| /* [154] */ MatcherIndex(47), |
| /* [155] */ MatcherIndex(48), |
| /* [156] */ MatcherIndex(49), |
| /* [157] */ MatcherIndex(26), |
| /* [158] */ MatcherIndex(25), |
| /* [159] */ MatcherIndex(50), |
| /* [160] */ MatcherIndex(46), |
| /* [161] */ MatcherIndex(35), |
| /* [162] */ MatcherIndex(36), |
| /* [163] */ MatcherIndex(39), |
| /* [164] */ MatcherIndex(28), |
| /* [165] */ MatcherIndex(37), |
| /* [166] */ MatcherIndex(38), |
| /* [167] */ MatcherIndex(27), |
| }; |
| |
| static_assert(MatcherIndicesIndex::CanIndex(kMatcherIndices), |
| "MatcherIndicesIndex is not large enough to index kMatcherIndices"); |
| |
| constexpr ParameterInfo kParameters[] = { |
| { |
| /* [0] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(132), |
| }, |
| { |
| /* [1] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [2] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [3] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [4] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [5] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [6] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(136), |
| }, |
| { |
| /* [7] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [8] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [9] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [10] */ |
| /* usage */ core::ParameterUsage::kDepth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [11] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [12] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(150), |
| }, |
| { |
| /* [13] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [14] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [15] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [16] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [17] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [18] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(162), |
| }, |
| { |
| /* [19] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [20] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [21] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [22] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [23] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [24] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(166), |
| }, |
| { |
| /* [25] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [26] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [27] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [28] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [29] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [30] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(114), |
| }, |
| { |
| /* [31] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [32] */ |
| /* usage */ core::ParameterUsage::kCompareValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [33] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [34] */ |
| /* usage */ core::ParameterUsage::kOriginalValue, |
| /* matcher_indices */ MatcherIndicesIndex(16), |
| }, |
| { |
| /* [35] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(161), |
| }, |
| { |
| /* [36] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(164), |
| }, |
| { |
| /* [37] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(73), |
| }, |
| { |
| /* [38] */ |
| /* usage */ core::ParameterUsage::kDepthRef, |
| /* matcher_indices */ MatcherIndicesIndex(2), |
| }, |
| { |
| /* [39] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [40] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(162), |
| }, |
| { |
| /* [41] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(164), |
| }, |
| { |
| /* [42] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [43] */ |
| /* usage */ core::ParameterUsage::kDepthRef, |
| /* matcher_indices */ MatcherIndicesIndex(2), |
| }, |
| { |
| /* [44] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [45] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(128), |
| }, |
| { |
| /* [46] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [47] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [48] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [49] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [50] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(148), |
| }, |
| { |
| /* [51] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [52] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [53] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [54] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [55] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(161), |
| }, |
| { |
| /* [56] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [57] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [58] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [59] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [60] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(165), |
| }, |
| { |
| /* [61] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [62] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [63] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [64] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [65] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(1), |
| }, |
| { |
| /* [66] */ |
| /* usage */ core::ParameterUsage::kCompareValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [67] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [68] */ |
| /* usage */ core::ParameterUsage::kOriginalValue, |
| /* matcher_indices */ MatcherIndicesIndex(16), |
| }, |
| { |
| /* [69] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(0), |
| }, |
| { |
| /* [70] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [71] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [72] */ |
| /* usage */ core::ParameterUsage::kOriginalValue, |
| /* matcher_indices */ MatcherIndicesIndex(16), |
| }, |
| { |
| /* [73] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(165), |
| }, |
| { |
| /* [74] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(164), |
| }, |
| { |
| /* [75] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [76] */ |
| /* usage */ core::ParameterUsage::kDepthRef, |
| /* matcher_indices */ MatcherIndicesIndex(2), |
| }, |
| { |
| /* [77] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(166), |
| }, |
| { |
| /* [78] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(164), |
| }, |
| { |
| /* [79] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [80] */ |
| /* usage */ core::ParameterUsage::kDepthRef, |
| /* matcher_indices */ MatcherIndicesIndex(2), |
| }, |
| { |
| /* [81] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(161), |
| }, |
| { |
| /* [82] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [83] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(73), |
| }, |
| { |
| /* [84] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [85] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(162), |
| }, |
| { |
| /* [86] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [87] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [88] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [89] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(128), |
| }, |
| { |
| /* [90] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [91] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(73), |
| }, |
| { |
| /* [92] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [93] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(132), |
| }, |
| { |
| /* [94] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [95] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [96] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [97] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(126), |
| }, |
| { |
| /* [98] */ |
| /* usage */ core::ParameterUsage::kLevel, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [99] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [100] */ |
| /* usage */ core::ParameterUsage::kNumLevels, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [101] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(132), |
| }, |
| { |
| /* [102] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [103] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [104] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [105] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(108), |
| }, |
| { |
| /* [106] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [107] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [108] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [109] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(136), |
| }, |
| { |
| /* [110] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [111] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [112] */ |
| /* usage */ core::ParameterUsage::kDepth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [113] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(111), |
| }, |
| { |
| /* [114] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [115] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [116] */ |
| /* usage */ core::ParameterUsage::kDepth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [117] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(150), |
| }, |
| { |
| /* [118] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [119] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [120] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [121] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(134), |
| }, |
| { |
| /* [122] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [123] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [124] */ |
| /* usage */ core::ParameterUsage::kSamples, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [125] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(162), |
| }, |
| { |
| /* [126] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [127] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [128] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [129] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(166), |
| }, |
| { |
| /* [130] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [131] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [132] */ |
| /* usage */ core::ParameterUsage::kElements, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [133] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(163), |
| }, |
| { |
| /* [134] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [135] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [136] */ |
| /* usage */ core::ParameterUsage::kSamples, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [137] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [138] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [139] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(6), |
| }, |
| { |
| /* [140] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [141] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [142] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [143] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(1), |
| }, |
| { |
| /* [144] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| }, |
| { |
| /* [145] */ |
| /* usage */ core::ParameterUsage::kOriginalValue, |
| /* matcher_indices */ MatcherIndicesIndex(16), |
| }, |
| { |
| /* [146] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(63), |
| }, |
| { |
| /* [147] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(4), |
| }, |
| { |
| /* [148] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [149] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(67), |
| }, |
| { |
| /* [150] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(9), |
| }, |
| { |
| /* [151] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [152] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(71), |
| }, |
| { |
| /* [153] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [154] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [155] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(75), |
| }, |
| { |
| /* [156] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [157] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [158] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(78), |
| }, |
| { |
| /* [159] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(4), |
| }, |
| { |
| /* [160] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [161] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(81), |
| }, |
| { |
| /* [162] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(9), |
| }, |
| { |
| /* [163] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [164] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(84), |
| }, |
| { |
| /* [165] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [166] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [167] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(87), |
| }, |
| { |
| /* [168] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [169] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [170] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(90), |
| }, |
| { |
| /* [171] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(4), |
| }, |
| { |
| /* [172] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [173] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(93), |
| }, |
| { |
| /* [174] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(9), |
| }, |
| { |
| /* [175] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [176] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(96), |
| }, |
| { |
| /* [177] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [178] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [179] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(99), |
| }, |
| { |
| /* [180] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(122), |
| }, |
| { |
| /* [181] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [182] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(134), |
| }, |
| { |
| /* [183] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [184] */ |
| /* usage */ core::ParameterUsage::kSampleIndex, |
| /* matcher_indices */ MatcherIndicesIndex(8), |
| }, |
| { |
| /* [185] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(163), |
| }, |
| { |
| /* [186] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [187] */ |
| /* usage */ core::ParameterUsage::kSampleIndex, |
| /* matcher_indices */ MatcherIndicesIndex(8), |
| }, |
| { |
| /* [188] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [189] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [190] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [191] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [192] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [193] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(65), |
| }, |
| { |
| /* [194] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [195] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [196] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(138), |
| }, |
| { |
| /* [197] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [198] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [199] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [200] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [201] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [202] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(5), |
| }, |
| { |
| /* [203] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [204] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [205] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(69), |
| }, |
| { |
| /* [206] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [207] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [208] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(140), |
| }, |
| { |
| /* [209] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(144), |
| }, |
| { |
| /* [210] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [211] */ |
| /* usage */ core::ParameterUsage::kValue, |
| /* matcher_indices */ MatcherIndicesIndex(142), |
| }, |
| { |
| /* [212] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(165), |
| }, |
| { |
| /* [213] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [214] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [215] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(166), |
| }, |
| { |
| /* [216] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [217] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [218] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(148), |
| }, |
| { |
| /* [219] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [220] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(146), |
| }, |
| { |
| /* [221] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(150), |
| }, |
| { |
| /* [222] */ |
| /* usage */ core::ParameterUsage::kSampler, |
| /* matcher_indices */ MatcherIndicesIndex(167), |
| }, |
| { |
| /* [223] */ |
| /* usage */ core::ParameterUsage::kCoords, |
| /* matcher_indices */ MatcherIndicesIndex(120), |
| }, |
| { |
| /* [224] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(128), |
| }, |
| { |
| /* [225] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [226] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [227] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(105), |
| }, |
| { |
| /* [228] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [229] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [230] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(148), |
| }, |
| { |
| /* [231] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [232] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [233] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(161), |
| }, |
| { |
| /* [234] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [235] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [236] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(165), |
| }, |
| { |
| /* [237] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [238] */ |
| /* usage */ core::ParameterUsage::kHeight, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [239] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(20), |
| }, |
| { |
| /* [240] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(39), |
| }, |
| { |
| /* [241] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(54), |
| }, |
| { |
| /* [242] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(20), |
| }, |
| { |
| /* [243] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(28), |
| }, |
| { |
| /* [244] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(32), |
| }, |
| { |
| /* [245] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(0), |
| }, |
| { |
| /* [246] */ |
| /* usage */ core::ParameterUsage::kOffset, |
| /* matcher_indices */ MatcherIndicesIndex(7), |
| }, |
| { |
| /* [247] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(126), |
| }, |
| { |
| /* [248] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [249] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(128), |
| }, |
| { |
| /* [250] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(130), |
| }, |
| { |
| /* [251] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(132), |
| }, |
| { |
| /* [252] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [253] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(136), |
| }, |
| { |
| /* [254] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [255] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(161), |
| }, |
| { |
| /* [256] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(130), |
| }, |
| { |
| /* [257] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(162), |
| }, |
| { |
| /* [258] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [259] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(102), |
| }, |
| { |
| /* [260] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(14), |
| }, |
| { |
| /* [261] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(105), |
| }, |
| { |
| /* [262] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(130), |
| }, |
| { |
| /* [263] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(108), |
| }, |
| { |
| /* [264] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [265] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(111), |
| }, |
| { |
| /* [266] */ |
| /* usage */ core::ParameterUsage::kLocation, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [267] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(152), |
| }, |
| { |
| /* [268] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [269] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(126), |
| }, |
| { |
| /* [270] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [271] */ |
| /* usage */ core::ParameterUsage::kTexture, |
| /* matcher_indices */ MatcherIndicesIndex(102), |
| }, |
| { |
| /* [272] */ |
| /* usage */ core::ParameterUsage::kWidth, |
| /* matcher_indices */ MatcherIndicesIndex(11), |
| }, |
| { |
| /* [273] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(4), |
| }, |
| { |
| /* [274] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(2), |
| }, |
| { |
| /* [275] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(51), |
| }, |
| { |
| /* [276] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(48), |
| }, |
| { |
| /* [277] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(116), |
| }, |
| { |
| /* [278] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(118), |
| }, |
| { |
| /* [279] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(60), |
| }, |
| { |
| /* [280] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(158), |
| }, |
| { |
| /* [281] */ |
| /* usage */ core::ParameterUsage::kNone, |
| /* matcher_indices */ MatcherIndicesIndex(157), |
| }, |
| }; |
| |
| static_assert(ParameterIndex::CanIndex(kParameters), |
| "ParameterIndex is not large enough to index kParameters"); |
| |
| constexpr TemplateInfo kTemplates[] = { |
| { |
| /* [0] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(156), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [1] */ |
| /* name */ "K", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [2] */ |
| /* name */ "C", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [3] */ |
| /* name */ "R", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [4] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(156), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [5] */ |
| /* name */ "C", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [6] */ |
| /* name */ "R", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [7] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(154), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [8] */ |
| /* name */ "N", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [9] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(159), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [10] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(155), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [11] */ |
| /* name */ "N", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [12] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [13] */ |
| /* name */ "N", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [14] */ |
| /* name */ "F", |
| /* matcher_indices */ MatcherIndicesIndex(64), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [15] */ |
| /* name */ "A", |
| /* matcher_indices */ MatcherIndicesIndex(1), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [16] */ |
| /* name */ "F", |
| /* matcher_indices */ MatcherIndicesIndex(91), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [17] */ |
| /* name */ "A", |
| /* matcher_indices */ MatcherIndicesIndex(1), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [18] */ |
| /* name */ "F", |
| /* matcher_indices */ MatcherIndicesIndex(36), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [19] */ |
| /* name */ "A", |
| /* matcher_indices */ MatcherIndicesIndex(1), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [20] */ |
| /* name */ "F", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [21] */ |
| /* name */ "A", |
| /* matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* kind */ TemplateInfo::Kind::kNumber, |
| }, |
| { |
| /* [22] */ |
| /* name */ "C", |
| /* matcher_indices */ MatcherIndicesIndex(18), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| { |
| /* [23] */ |
| /* name */ "T", |
| /* matcher_indices */ MatcherIndicesIndex(160), |
| /* kind */ TemplateInfo::Kind::kType, |
| }, |
| }; |
| |
| static_assert(TemplateIndex::CanIndex(kTemplates), |
| "TemplateIndex is not large enough to index kTemplates"); |
| |
| constexpr OverloadInfo kOverloads[] = { |
| { |
| /* [0] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(21), |
| /* parameters */ ParameterIndex(267), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [1] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(269), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [2] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(97), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [3] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(20), |
| /* parameters */ ParameterIndex(271), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [4] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(224), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [5] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(45), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [6] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(20), |
| /* parameters */ ParameterIndex(227), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [7] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(101), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [8] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 6, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(0), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [9] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(20), |
| /* parameters */ ParameterIndex(105), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [10] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(109), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [11] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 6, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(6), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [12] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(20), |
| /* parameters */ ParameterIndex(113), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [13] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(230), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [14] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(50), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [15] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(117), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [16] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 6, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(12), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [17] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(121), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [18] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(233), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [19] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(55), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [20] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(125), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [21] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 6, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(18), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [22] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(236), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [23] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(60), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [24] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(129), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [25] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 6, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(24), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [26] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(133), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [27] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(7), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [28] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(247), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [29] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(249), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [30] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(251), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [31] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(182), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [32] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(253), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [33] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(255), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [34] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(257), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [35] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(185), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [36] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(14), |
| /* parameters */ ParameterIndex(259), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [37] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(14), |
| /* parameters */ ParameterIndex(261), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [38] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(14), |
| /* parameters */ ParameterIndex(263), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [39] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(14), |
| /* parameters */ ParameterIndex(265), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [40] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(16), |
| /* parameters */ ParameterIndex(259), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [41] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(16), |
| /* parameters */ ParameterIndex(261), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [42] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(16), |
| /* parameters */ ParameterIndex(263), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [43] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(16), |
| /* parameters */ ParameterIndex(265), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [44] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(18), |
| /* parameters */ ParameterIndex(259), |
| /* return_matcher_indices */ MatcherIndicesIndex(118), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [45] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(18), |
| /* parameters */ ParameterIndex(261), |
| /* return_matcher_indices */ MatcherIndicesIndex(118), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [46] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(18), |
| /* parameters */ ParameterIndex(263), |
| /* return_matcher_indices */ MatcherIndicesIndex(118), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [47] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(18), |
| /* parameters */ ParameterIndex(265), |
| /* return_matcher_indices */ MatcherIndicesIndex(118), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [48] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(146), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [49] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(149), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [50] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(152), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [51] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(155), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [52] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(158), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [53] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(161), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [54] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(164), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [55] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(167), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [56] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(170), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [57] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(173), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [58] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(176), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [59] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(22), |
| /* parameters */ ParameterIndex(179), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [60] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(35), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [61] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(35), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [62] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(40), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [63] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(40), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [64] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(73), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [65] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(77), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [66] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(81), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [67] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(81), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [68] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(85), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [69] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(85), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [70] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(212), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [71] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(215), |
| /* return_matcher_indices */ MatcherIndicesIndex(120), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [72] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(89), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [73] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(89), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [74] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(93), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [75] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(93), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [76] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(218), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [77] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(23), |
| /* parameters */ ParameterIndex(221), |
| /* return_matcher_indices */ MatcherIndicesIndex(124), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [78] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 3, |
| /* templates */ TemplateIndex(4), |
| /* parameters */ ParameterIndex(239), |
| /* return_matcher_indices */ MatcherIndicesIndex(54), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [79] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 3, |
| /* templates */ TemplateIndex(4), |
| /* parameters */ ParameterIndex(241), |
| /* return_matcher_indices */ MatcherIndicesIndex(39), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [80] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 4, |
| /* templates */ TemplateIndex(0), |
| /* parameters */ ParameterIndex(243), |
| /* return_matcher_indices */ MatcherIndicesIndex(24), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [81] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(7), |
| /* parameters */ ParameterIndex(273), |
| /* return_matcher_indices */ MatcherIndicesIndex(8), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [82] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(7), |
| /* parameters */ ParameterIndex(240), |
| /* return_matcher_indices */ MatcherIndicesIndex(36), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [83] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(10), |
| /* parameters */ ParameterIndex(273), |
| /* return_matcher_indices */ MatcherIndicesIndex(7), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [84] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(10), |
| /* parameters */ ParameterIndex(240), |
| /* return_matcher_indices */ MatcherIndicesIndex(42), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [85] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(12), |
| /* parameters */ ParameterIndex(273), |
| /* return_matcher_indices */ MatcherIndicesIndex(2), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [86] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(12), |
| /* parameters */ ParameterIndex(240), |
| /* return_matcher_indices */ MatcherIndicesIndex(45), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [87] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(274), |
| /* return_matcher_indices */ MatcherIndicesIndex(7), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [88] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(8), |
| /* parameters */ ParameterIndex(275), |
| /* return_matcher_indices */ MatcherIndicesIndex(48), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [89] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(137), |
| /* return_matcher_indices */ MatcherIndicesIndex(2), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [90] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(8), |
| /* parameters */ ParameterIndex(276), |
| /* return_matcher_indices */ MatcherIndicesIndex(51), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [91] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(12), |
| /* parameters */ ParameterIndex(65), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [92] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 5, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(30), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [93] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(12), |
| /* parameters */ ParameterIndex(143), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [94] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 4, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(69), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [95] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 1, |
| /* templates */ TemplateIndex(9), |
| /* parameters */ ParameterIndex(273), |
| /* return_matcher_indices */ MatcherIndicesIndex(8), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [96] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 2, |
| /* templates */ TemplateIndex(8), |
| /* parameters */ ParameterIndex(279), |
| /* return_matcher_indices */ MatcherIndicesIndex(57), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [97] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(137), |
| /* return_matcher_indices */ MatcherIndicesIndex(8), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [98] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(140), |
| /* return_matcher_indices */ MatcherIndicesIndex(7), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [99] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(277), |
| /* return_matcher_indices */ MatcherIndicesIndex(157), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [100] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(278), |
| /* return_matcher_indices */ MatcherIndicesIndex(158), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [101] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(280), |
| /* return_matcher_indices */ MatcherIndicesIndex(118), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [102] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), |
| /* num_parameters */ 1, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(281), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [103] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(65), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [104] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(138), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [105] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(116), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [106] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(5), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [107] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(69), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [108] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(140), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [109] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 2, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(245), |
| /* return_matcher_indices */ MatcherIndicesIndex(142), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [110] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(188), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [111] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(191), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [112] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(194), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [113] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(197), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [114] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(200), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [115] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(203), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [116] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(206), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| { |
| /* [117] */ |
| /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction), |
| /* num_parameters */ 3, |
| /* num_explicit_templates */ 0, |
| /* num_templates */ 0, |
| /* templates */ TemplateIndex(/* invalid */), |
| /* parameters */ ParameterIndex(209), |
| /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */), |
| /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */), |
| }, |
| }; |
| |
| static_assert(OverloadIndex::CanIndex(kOverloads), |
| "OverloadIndex is not large enough to index kOverloads"); |
| |
| constexpr IntrinsicInfo kBuiltins[] = { |
| { |
| /* [0] */ |
| /* fn asint[T : f32_u32](T) -> i32 */ |
| /* fn asint[T : f32_u32, N : num](vec<N, T>) -> vec<N, i32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(81), |
| }, |
| { |
| /* [1] */ |
| /* fn asuint[T : f32_i32](T) -> u32 */ |
| /* fn asuint[T : f32_i32, N : num](vec<N, T>) -> vec<N, u32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(83), |
| }, |
| { |
| /* [2] */ |
| /* fn asfloat[T : iu32](T) -> f32 */ |
| /* fn asfloat[T : iu32, N : num](vec<N, T>) -> vec<N, f32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(85), |
| }, |
| { |
| /* [3] */ |
| /* fn dot4add_i8packed(u32, u32, ptr<function, i32, writable>) -> i32 */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(97), |
| }, |
| { |
| /* [4] */ |
| /* fn dot4add_u8packed(u32, u32, ptr<function, u32, writable>) -> u32 */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(98), |
| }, |
| { |
| /* [5] */ |
| /* fn f32tof16(f32) -> u32 */ |
| /* fn f32tof16[N : num](vec<N, f32>) -> vec<N, u32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(87), |
| }, |
| { |
| /* [6] */ |
| /* fn f16tof32(u32) -> f32 */ |
| /* fn f16tof32[N : num](vec<N, u32>) -> vec<N, f32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(89), |
| }, |
| { |
| /* [7] */ |
| /* fn InterlockedCompareExchange[T : iu32](ptr<workgroup, atomic<T>, read_write>, compare_value: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedCompareExchange(byte_address_buffer<read_write>, offset: iu32, compare_value: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(91), |
| }, |
| { |
| /* [8] */ |
| /* fn InterlockedExchange[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedExchange(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [9] */ |
| /* fn InterlockedAdd[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedAdd(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [10] */ |
| /* fn InterlockedMax[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedMax(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [11] */ |
| /* fn InterlockedMin[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedMin(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [12] */ |
| /* fn InterlockedAnd[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedAnd(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [13] */ |
| /* fn InterlockedOr[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedOr(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [14] */ |
| /* fn InterlockedXor[T : iu32](ptr<workgroup, atomic<T>, read_write>, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* fn InterlockedXor(byte_address_buffer<readable>, offset: iu32, value: iu32, original_value: ptr<function, iu32, read_write>) */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(93), |
| }, |
| { |
| /* [15] */ |
| /* fn mul[T : f32_f16, C : num, R : num](mat<R, C, T>, vec<C, T>) -> vec<R, T> */ |
| /* fn mul[T : f32_f16, C : num, R : num](vec<R, T>, mat<R, C, T>) -> vec<C, T> */ |
| /* fn mul[T : f32_f16, K : num, C : num, R : num](mat<R, K, T>, mat<K, C, T>) -> mat<R, C, T> */ |
| /* num overloads */ 3, |
| /* overloads */ OverloadIndex(78), |
| }, |
| { |
| /* [16] */ |
| /* fn pack_u8(vec4<u32>) -> uint8_t4_packed */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(99), |
| }, |
| { |
| /* [17] */ |
| /* fn pack_s8(vec4<i32>) -> int8_t4_packed */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(100), |
| }, |
| { |
| /* [18] */ |
| /* fn pack_clamp_s8(vec4<i32>) -> int8_t4_packed */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(100), |
| }, |
| { |
| /* [19] */ |
| /* fn sign[T : fi32_f16](T) -> i32 */ |
| /* fn sign[N : num, T : fi32_f16](vec<N, T>) -> vec<N, i32> */ |
| /* num overloads */ 2, |
| /* overloads */ OverloadIndex(95), |
| }, |
| { |
| /* [20] */ |
| /* fn textureStore[C : iu32](texture: texture_storage_1d<f32_texel_format, writable>, coords: C, value: vec4<f32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d<f32_texel_format, writable>, coords: vec2<C>, value: vec4<f32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d_array<f32_texel_format, writable>, coords: vec3<C>, value: vec4<f32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_3d<f32_texel_format, writable>, coords: vec3<C>, value: vec4<f32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_1d<i32_texel_format, writable>, coords: C, value: vec4<i32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d<i32_texel_format, writable>, coords: vec2<C>, value: vec4<i32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d_array<i32_texel_format, writable>, coords: vec3<C>, value: vec4<i32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_3d<i32_texel_format, writable>, coords: vec3<C>, value: vec4<i32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_1d<u32_texel_format, writable>, coords: C, value: vec4<u32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d<u32_texel_format, writable>, coords: vec2<C>, value: vec4<u32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_2d_array<u32_texel_format, writable>, coords: vec3<C>, value: vec4<u32>) */ |
| /* fn textureStore[C : iu32](texture: texture_storage_3d<u32_texel_format, writable>, coords: vec3<C>, value: vec4<u32>) */ |
| /* num overloads */ 12, |
| /* overloads */ OverloadIndex(48), |
| }, |
| { |
| /* [21] */ |
| /* fn unpack_s8s32(int8_t4_packed) -> vec4<i32> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(101), |
| }, |
| { |
| /* [22] */ |
| /* fn unpack_u8u32(uint8_t4_packed) -> vec4<u32> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(102), |
| }, |
| { |
| /* [23] */ |
| /* fn Load(byte_address_buffer<readable>, offset: u32) -> u32 */ |
| /* fn Load[T : fiu32](texture: texture_1d<T>, location: vec2<i32>) -> vec4<T> */ |
| /* fn Load[T : fiu32](texture: texture_2d<T>, location: vec3<i32>) -> vec4<T> */ |
| /* fn Load[T : fiu32](texture: texture_2d_array<T>, location: vec4<i32>) -> vec4<T> */ |
| /* fn Load[T : fiu32](texture: texture_multisampled_2d<T>, location: vec2<i32>, sample_index: i32) -> vec4<T> */ |
| /* fn Load[T : fiu32](texture: texture_3d<T>, location: vec4<i32>) -> vec4<T> */ |
| /* fn Load(texture: texture_depth_2d, location: vec3<i32>) -> vec4<f32> */ |
| /* fn Load(texture: texture_depth_2d_array, location: vec4<i32>) -> vec4<f32> */ |
| /* fn Load(texture: texture_depth_multisampled_2d, location: vec2<i32>, sample_index: i32) -> vec4<f32> */ |
| /* fn Load[F : f32_texel_format, A : readable](texture: texture_storage_1d<F, A>, location: vec2<i32>) -> vec4<f32> */ |
| /* fn Load[F : f32_texel_format, A : readable](texture: texture_storage_2d<F, A>, location: vec3<i32>) -> vec4<f32> */ |
| /* fn Load[F : f32_texel_format, A : readable](texture: texture_storage_2d_array<F, A>, location: vec4<i32>) -> vec4<f32> */ |
| /* fn Load[F : f32_texel_format, A : readable](texture: texture_storage_3d<F, A>, location: vec4<i32>) -> vec4<f32> */ |
| /* fn Load[F : u32_texel_format, A : readable](texture: texture_storage_1d<F, A>, location: vec2<i32>) -> vec4<u32> */ |
| /* fn Load[F : u32_texel_format, A : readable](texture: texture_storage_2d<F, A>, location: vec3<i32>) -> vec4<u32> */ |
| /* fn Load[F : u32_texel_format, A : readable](texture: texture_storage_2d_array<F, A>, location: vec4<i32>) -> vec4<u32> */ |
| /* fn Load[F : u32_texel_format, A : readable](texture: texture_storage_3d<F, A>, location: vec4<i32>) -> vec4<u32> */ |
| /* fn Load[F : i32_texel_format, A : readable](texture: texture_storage_1d<F, A>, location: vec2<i32>) -> vec4<i32> */ |
| /* fn Load[F : i32_texel_format, A : readable](texture: texture_storage_2d<F, A>, location: vec3<i32>) -> vec4<i32> */ |
| /* fn Load[F : i32_texel_format, A : readable](texture: texture_storage_2d_array<F, A>, location: vec4<i32>) -> vec4<i32> */ |
| /* fn Load[F : i32_texel_format, A : readable](texture: texture_storage_3d<F, A>, location: vec4<i32>) -> vec4<i32> */ |
| /* num overloads */ 21, |
| /* overloads */ OverloadIndex(27), |
| }, |
| { |
| /* [24] */ |
| /* fn Load2(byte_address_buffer<readable>, offset: u32) -> vec2<u32> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(103), |
| }, |
| { |
| /* [25] */ |
| /* fn Load3(byte_address_buffer<readable>, offset: u32) -> vec3<u32> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(104), |
| }, |
| { |
| /* [26] */ |
| /* fn Load4(byte_address_buffer<readable>, offset: u32) -> vec4<u32> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(105), |
| }, |
| { |
| /* [27] */ |
| /* fn LoadF16(byte_address_buffer<readable>, offset: u32) -> f16 */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(106), |
| }, |
| { |
| /* [28] */ |
| /* fn Load2F16(byte_address_buffer<readable>, offset: u32) -> vec2<f16> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(107), |
| }, |
| { |
| /* [29] */ |
| /* fn Load3F16(byte_address_buffer<readable>, offset: u32) -> vec3<f16> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(108), |
| }, |
| { |
| /* [30] */ |
| /* fn Load4F16(byte_address_buffer<readable>, offset: u32) -> vec4<f16> */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(109), |
| }, |
| { |
| /* [31] */ |
| /* fn Store(byte_address_buffer<writable>, offset: u32, value: u32) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(110), |
| }, |
| { |
| /* [32] */ |
| /* fn Store2(byte_address_buffer<writable>, offset: u32, value: vec2<u32>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(111), |
| }, |
| { |
| /* [33] */ |
| /* fn Store3(byte_address_buffer<writable>, offset: u32, value: vec3<u32>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(112), |
| }, |
| { |
| /* [34] */ |
| /* fn Store4(byte_address_buffer<writable>, offset: u32, value: vec4<u32>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(113), |
| }, |
| { |
| /* [35] */ |
| /* fn StoreF16(byte_address_buffer<writable>, offset: u32, value: f16) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(114), |
| }, |
| { |
| /* [36] */ |
| /* fn Store2F16(byte_address_buffer<writable>, offset: u32, value: vec2<f16>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(115), |
| }, |
| { |
| /* [37] */ |
| /* fn Store3F16(byte_address_buffer<writable>, offset: u32, value: vec3<f16>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(116), |
| }, |
| { |
| /* [38] */ |
| /* fn Store4F16(byte_address_buffer<writable>, offset: u32, value: vec4<f16>) */ |
| /* num overloads */ 1, |
| /* overloads */ OverloadIndex(117), |
| }, |
| { |
| /* [39] */ |
| /* fn GatherCmp(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32) -> vec4<f32> */ |
| /* fn GatherCmp(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32, offset: vec2<i32>) -> vec4<f32> */ |
| /* fn GatherCmp(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32) -> vec4<f32> */ |
| /* fn GatherCmp(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32, offset: vec2<i32>) -> vec4<f32> */ |
| /* fn GatherCmp(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32) -> vec4<f32> */ |
| /* fn GatherCmp(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec4<f32>, depth_ref: f32) -> vec4<f32> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(60), |
| }, |
| { |
| /* [40] */ |
| /* fn Gather(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>) -> vec4<f32> */ |
| /* fn Gather(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<f32> */ |
| /* fn Gather(texture: texture_depth_2d_array, sampler: sampler, coords: vec3<f32>) -> vec4<f32> */ |
| /* fn Gather(texture: texture_depth_2d_array, sampler: sampler, coords: vec3<f32>, offset: vec2<i32>) -> vec4<f32> */ |
| /* fn Gather(texture: texture_depth_cube, sampler: sampler, coords: vec3<f32>) -> vec4<f32> */ |
| /* fn Gather(texture: texture_depth_cube_array, sampler: sampler, coords: vec4<f32>) -> vec4<f32> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(66), |
| }, |
| { |
| /* [41] */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>) -> vec4<T> */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_cube<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherAlpha[T : fiu32](texture: texture_cube_array<T>, sampler: sampler, coords: vec4<f32>) -> vec4<T> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(72), |
| }, |
| { |
| /* [42] */ |
| /* fn GatherBlue[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>) -> vec4<T> */ |
| /* fn GatherBlue[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherBlue[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherBlue[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherBlue[T : fiu32](texture: texture_cube<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherBlue[T : fiu32](texture: texture_cube_array<T>, sampler: sampler, coords: vec4<f32>) -> vec4<T> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(72), |
| }, |
| { |
| /* [43] */ |
| /* fn GatherGreen[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>) -> vec4<T> */ |
| /* fn GatherGreen[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherGreen[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherGreen[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherGreen[T : fiu32](texture: texture_cube<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherGreen[T : fiu32](texture: texture_cube_array<T>, sampler: sampler, coords: vec4<f32>) -> vec4<T> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(72), |
| }, |
| { |
| /* [44] */ |
| /* fn GatherRed[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>) -> vec4<T> */ |
| /* fn GatherRed[T : fiu32](texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherRed[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherRed[T : fiu32](texture: texture_2d_array<T>, sampler: sampler, coords: vec3<f32>, offset: vec2<i32>) -> vec4<T> */ |
| /* fn GatherRed[T : fiu32](texture: texture_cube<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ |
| /* fn GatherRed[T : fiu32](texture: texture_cube_array<T>, sampler: sampler, coords: vec4<f32>) -> vec4<T> */ |
| /* num overloads */ 6, |
| /* overloads */ OverloadIndex(72), |
| }, |
| { |
| /* [45] */ |
| /* fn GetDimensions[A : access](byte_address_buffer<A>, width: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_1d<T>, width: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_1d<T>, level: u32, width: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[F : texel_format, A : access](texture: texture_storage_1d<F, A>, width: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_2d<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_2d<T>, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[F : texel_format, A : access](texture: texture_storage_2d<F, A>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_2d_array<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_2d_array<T>, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[F : texel_format, A : access](texture: texture_storage_2d_array<F, A>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_3d<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, depth: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_3d<T>, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, depth: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[F : texel_format, A : access](texture: texture_storage_3d<F, A>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, depth: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_cube<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_cube<T>, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_cube_array<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_cube_array<T>, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions[T : fiu32](texture: texture_multisampled_2d<T>, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, samples: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_2d, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_2d, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_2d_array, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_2d_array, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_cube, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_cube, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_cube_array, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_cube_array, level: u32, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, elements: ptr<function, u32, writable>, num_levels: ptr<function, u32, writable>) */ |
| /* fn GetDimensions(texture: texture_depth_multisampled_2d, width: ptr<function, u32, writable>, height: ptr<function, u32, writable>, samples: ptr<function, u32, writable>) */ |
| /* num overloads */ 27, |
| /* overloads */ OverloadIndex(0), |
| }, |
| }; |
| |
| // clang-format on |
| |
| } // anonymous namespace |
| |
| const core::intrinsic::TableData Dialect::kData{ |
| /* templates */ kTemplates, |
| /* type_matcher_indices */ kMatcherIndices, |
| /* type_matchers */ kTypeMatchers, |
| /* number_matchers */ kNumberMatchers, |
| /* parameters */ kParameters, |
| /* overloads */ kOverloads, |
| /* const_eval_functions */ Empty, |
| /* ctor_conv */ Empty, |
| /* builtins */ kBuiltins, |
| /* binary '+' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '-' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '*' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '/' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '%' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '^' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '&' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '|' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '&&' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '||' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '==' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '!=' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '<' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '>' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '<=' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '>=' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '<<' */ tint::core::intrinsic::kNoOverloads, |
| /* binary '>>' */ tint::core::intrinsic::kNoOverloads, |
| /* unary '!' */ tint::core::intrinsic::kNoOverloads, |
| /* unary '~' */ tint::core::intrinsic::kNoOverloads, |
| /* unary '-' */ tint::core::intrinsic::kNoOverloads, |
| /* unary '*' */ tint::core::intrinsic::kNoOverloads, |
| /* unary '&' */ tint::core::intrinsic::kNoOverloads, |
| }; |
| |
| } // namespace tint::hlsl::intrinsic |