blob: c5350f005a424e2a3b62478ed7b6131ad497ed0e [file] [log] [blame]
// Copyright 2023 The Dawn & Tint Authors
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
////////////////////////////////////////////////////////////////////////////////
// File generated by 'tools/src/cmd/gen' using the template:
// src/tint/lang/spirv/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/spirv/intrinsic/dialect.h"
#include "src/tint/lang/spirv/intrinsic/type_matchers.h"
#include "src/tint/utils/text/string_stream.h"
namespace tint::spirv::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 bool'
constexpr TypeMatcher kBoolMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
if (!MatchBool(state, ty)) {
return nullptr;
}
return BuildBool(state, ty);
},
/* string */ [](MatchState*) -> std::string {
return "bool";
}
};
/// 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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "f16";
}
};
/// 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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "u32";
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "vec4<" + 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "mat4x4<" + 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string N = state->NumName();
const std::string T = state->TypeName();
StringStream ss;
ss << "vec" << N << "<" << T << ">";
return ss.str();
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string N = state->NumName();
const std::string M = state->NumName();
const std::string T = state->TypeName();
StringStream ss;
ss << "mat" << N << "x" << M << "<" << T << ">";
return ss.str();
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "atomic<" + T + ">";
}
};
/// 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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "texture_cube_array<" + T + ">";
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "texture_multisampled_2d<" + 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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "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);
},
/* string */ [](MatchState*) -> std::string {
return "texture_depth_multisampled_2d";
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string F = state->NumName();
const std::string A = state->NumName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string F = state->NumName();
const std::string A = state->NumName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string F = state->NumName();
const std::string A = state->NumName();
return "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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string F = state->NumName();
const std::string A = state->NumName();
return "texture_storage_3d<" + F + ", " + A + ">";
}
};
/// 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);
},
/* string */ [](MatchState* state) -> std::string {
const std::string S = state->NumName();
const std::string T = state->TypeName();
const std::string A = state->NumName();
return "ptr<" + S + ", " + T + ", " + A + ">";
}
};
/// TypeMatcher for 'type struct_with_runtime_array'
constexpr TypeMatcher kStructWithRuntimeArrayMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
if (!MatchStructWithRuntimeArray(state, ty)) {
return nullptr;
}
return BuildStructWithRuntimeArray(state, ty);
},
/* string */ [](MatchState*) -> std::string {
return "struct_with_runtime_array";
}
};
/// TypeMatcher for 'type sampled_image'
constexpr TypeMatcher kSampledImageMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
const Type* T = nullptr;
if (!MatchSampledImage(state, ty, T)) {
return nullptr;
}
T = state.Type(T);
if (T == nullptr) {
return nullptr;
}
return BuildSampledImage(state, ty, T);
},
/* string */ [](MatchState* state) -> std::string {
const std::string T = state->TypeName();
return "sampled_image<" + T + ">";
}
};
/// 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;
},
/* string */ [](MatchState*) -> std::string {
StringStream ss;
// Note: We pass nullptr to the TypeMatcher::String() functions, as 'matcher's do not support
// template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
ss << kF32Matcher.string(nullptr) << " or " << kF16Matcher.string(nullptr);
return ss.str();
}
};
/// 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;
},
/* string */ [](MatchState*) -> std::string {
StringStream ss;
// Note: We pass nullptr to the TypeMatcher::String() functions, as 'matcher's do not support
// template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
ss << kI32Matcher.string(nullptr) << " or " << kU32Matcher.string(nullptr);
return ss.str();
}
};
/// 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;
},
/* string */ [](MatchState*) -> std::string {
StringStream ss;
// Note: We pass nullptr to the TypeMatcher::String() functions, as 'matcher's do not support
// template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
ss << kF32Matcher.string(nullptr) << ", " << kI32Matcher.string(nullptr) << " or " << kU32Matcher.string(nullptr);
return ss.str();
}
};
/// TypeMatcher for 'match scalar'
constexpr TypeMatcher kScalarMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
if (MatchF32(state, ty)) {
return BuildF32(state, ty);
}
if (MatchF16(state, ty)) {
return BuildF16(state, ty);
}
if (MatchI32(state, ty)) {
return BuildI32(state, ty);
}
if (MatchU32(state, ty)) {
return BuildU32(state, ty);
}
if (MatchBool(state, ty)) {
return BuildBool(state, ty);
}
return nullptr;
},
/* string */ [](MatchState*) -> std::string {
StringStream ss;
// Note: We pass nullptr to the TypeMatcher::String() functions, as 'matcher's do not support
// template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
ss << kF32Matcher.string(nullptr) << ", " << kF16Matcher.string(nullptr) << ", " << kI32Matcher.string(nullptr) << ", " << kU32Matcher.string(nullptr) << " or " << kBoolMatcher.string(nullptr);
return ss.str();
}
};
/// TypeMatcher for 'match samplers'
constexpr TypeMatcher kSamplersMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
if (MatchSampler(state, ty)) {
return BuildSampler(state, ty);
}
if (MatchSamplerComparison(state, ty)) {
return BuildSamplerComparison(state, ty);
}
return nullptr;
},
/* string */ [](MatchState*) -> std::string {
StringStream ss;
// Note: We pass nullptr to the TypeMatcher::String() functions, as 'matcher's do not support
// template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
ss << kSamplerMatcher.string(nullptr) << " or " << kSamplerComparisonMatcher.string(nullptr);
return ss.str();
}
};
/// 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;
},
/* string */ [](MatchState*) -> std::string {
return "read_write";
}
};
/// 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;
},
/* string */ [](MatchState*) -> std::string {
return "storage";
}
};
/// EnumMatcher for 'match workgroup_or_storage'
constexpr NumberMatcher kWorkgroupOrStorageMatcher {
/* match */ [](MatchState&, Number number) -> Number {
switch (static_cast<core::AddressSpace>(number.Value())) {
case core::AddressSpace::kWorkgroup:
case core::AddressSpace::kStorage:
return number;
default:
return Number::invalid;
}
},
/* string */ [](MatchState*) -> std::string {
return "workgroup or storage";
}
};
/// EnumMatcher for 'match f32_texel_format'
constexpr NumberMatcher kF32TexelFormatMatcher {
/* match */ [](MatchState&, Number number) -> Number {
switch (static_cast<core::TexelFormat>(number.Value())) {
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;
}
},
/* string */ [](MatchState*) -> std::string {
return "bgra8unorm, rgba8unorm, rgba8snorm, rgba16float, r32float, rg32float or rgba32float";
}
};
/// 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;
}
},
/* string */ [](MatchState*) -> std::string {
return "rgba8sint, rgba16sint, r32sint, rg32sint or rgba32sint";
}
};
/// 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;
}
},
/* string */ [](MatchState*) -> std::string {
return "rgba8uint, rgba16uint, r32uint, rg32uint or rgba32uint";
}
};
/// 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;
}
},
/* string */ [](MatchState*) -> std::string {
return "read or 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;
}
},
/* string */ [](MatchState*) -> std::string {
return "write or read_write";
}
};
/// 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] */ kBoolMatcher,
/* [5] */ kF32Matcher,
/* [6] */ kF16Matcher,
/* [7] */ kI32Matcher,
/* [8] */ kU32Matcher,
/* [9] */ kVec2Matcher,
/* [10] */ kVec3Matcher,
/* [11] */ kVec4Matcher,
/* [12] */ kMat2X2Matcher,
/* [13] */ kMat2X3Matcher,
/* [14] */ kMat2X4Matcher,
/* [15] */ kMat3X2Matcher,
/* [16] */ kMat3X3Matcher,
/* [17] */ kMat3X4Matcher,
/* [18] */ kMat4X2Matcher,
/* [19] */ kMat4X3Matcher,
/* [20] */ kMat4X4Matcher,
/* [21] */ kVecMatcher,
/* [22] */ kMatMatcher,
/* [23] */ kAtomicMatcher,
/* [24] */ kSamplerMatcher,
/* [25] */ kSamplerComparisonMatcher,
/* [26] */ kTexture1DMatcher,
/* [27] */ kTexture2DMatcher,
/* [28] */ kTexture2DArrayMatcher,
/* [29] */ kTexture3DMatcher,
/* [30] */ kTextureCubeMatcher,
/* [31] */ kTextureCubeArrayMatcher,
/* [32] */ kTextureMultisampled2DMatcher,
/* [33] */ kTextureDepth2DMatcher,
/* [34] */ kTextureDepth2DArrayMatcher,
/* [35] */ kTextureDepthCubeMatcher,
/* [36] */ kTextureDepthCubeArrayMatcher,
/* [37] */ kTextureDepthMultisampled2DMatcher,
/* [38] */ kTextureStorage1DMatcher,
/* [39] */ kTextureStorage2DMatcher,
/* [40] */ kTextureStorage2DArrayMatcher,
/* [41] */ kTextureStorage3DMatcher,
/* [42] */ kPtrMatcher,
/* [43] */ kStructWithRuntimeArrayMatcher,
/* [44] */ kSampledImageMatcher,
/* [45] */ kF32F16Matcher,
/* [46] */ kIu32Matcher,
/* [47] */ kFiu32Matcher,
/* [48] */ kScalarMatcher,
/* [49] */ kSamplersMatcher,
};
/// 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] */ kReadWriteMatcher,
/* [5] */ kStorageMatcher,
/* [6] */ kWorkgroupOrStorageMatcher,
/* [7] */ kF32TexelFormatMatcher,
/* [8] */ kI32TexelFormatMatcher,
/* [9] */ kU32TexelFormatMatcher,
/* [10] */ kReadableMatcher,
/* [11] */ kWritableMatcher,
};
constexpr MatcherIndex kMatcherIndices[] = {
/* [0] */ MatcherIndex(42),
/* [1] */ MatcherIndex(2),
/* [2] */ MatcherIndex(23),
/* [3] */ MatcherIndex(0),
/* [4] */ MatcherIndex(4),
/* [5] */ MatcherIndex(42),
/* [6] */ MatcherIndex(5),
/* [7] */ MatcherIndex(43),
/* [8] */ MatcherIndex(1),
/* [9] */ MatcherIndex(22),
/* [10] */ MatcherIndex(2),
/* [11] */ MatcherIndex(3),
/* [12] */ MatcherIndex(0),
/* [13] */ MatcherIndex(22),
/* [14] */ MatcherIndex(1),
/* [15] */ MatcherIndex(3),
/* [16] */ MatcherIndex(0),
/* [17] */ MatcherIndex(22),
/* [18] */ MatcherIndex(2),
/* [19] */ MatcherIndex(1),
/* [20] */ MatcherIndex(0),
/* [21] */ MatcherIndex(22),
/* [22] */ MatcherIndex(1),
/* [23] */ MatcherIndex(2),
/* [24] */ MatcherIndex(0),
/* [25] */ MatcherIndex(21),
/* [26] */ MatcherIndex(0),
/* [27] */ MatcherIndex(1),
/* [28] */ MatcherIndex(44),
/* [29] */ MatcherIndex(26),
/* [30] */ MatcherIndex(0),
/* [31] */ MatcherIndex(44),
/* [32] */ MatcherIndex(27),
/* [33] */ MatcherIndex(0),
/* [34] */ MatcherIndex(44),
/* [35] */ MatcherIndex(28),
/* [36] */ MatcherIndex(0),
/* [37] */ MatcherIndex(44),
/* [38] */ MatcherIndex(29),
/* [39] */ MatcherIndex(0),
/* [40] */ MatcherIndex(44),
/* [41] */ MatcherIndex(30),
/* [42] */ MatcherIndex(0),
/* [43] */ MatcherIndex(44),
/* [44] */ MatcherIndex(31),
/* [45] */ MatcherIndex(0),
/* [46] */ MatcherIndex(38),
/* [47] */ MatcherIndex(0),
/* [48] */ MatcherIndex(1),
/* [49] */ MatcherIndex(39),
/* [50] */ MatcherIndex(0),
/* [51] */ MatcherIndex(1),
/* [52] */ MatcherIndex(40),
/* [53] */ MatcherIndex(0),
/* [54] */ MatcherIndex(1),
/* [55] */ MatcherIndex(41),
/* [56] */ MatcherIndex(0),
/* [57] */ MatcherIndex(1),
/* [58] */ MatcherIndex(38),
/* [59] */ MatcherIndex(7),
/* [60] */ MatcherIndex(11),
/* [61] */ MatcherIndex(5),
/* [62] */ MatcherIndex(38),
/* [63] */ MatcherIndex(8),
/* [64] */ MatcherIndex(11),
/* [65] */ MatcherIndex(0),
/* [66] */ MatcherIndex(38),
/* [67] */ MatcherIndex(9),
/* [68] */ MatcherIndex(11),
/* [69] */ MatcherIndex(7),
/* [70] */ MatcherIndex(39),
/* [71] */ MatcherIndex(7),
/* [72] */ MatcherIndex(11),
/* [73] */ MatcherIndex(8),
/* [74] */ MatcherIndex(39),
/* [75] */ MatcherIndex(8),
/* [76] */ MatcherIndex(11),
/* [77] */ MatcherIndex(39),
/* [78] */ MatcherIndex(9),
/* [79] */ MatcherIndex(11),
/* [80] */ MatcherIndex(40),
/* [81] */ MatcherIndex(7),
/* [82] */ MatcherIndex(11),
/* [83] */ MatcherIndex(40),
/* [84] */ MatcherIndex(8),
/* [85] */ MatcherIndex(11),
/* [86] */ MatcherIndex(40),
/* [87] */ MatcherIndex(9),
/* [88] */ MatcherIndex(11),
/* [89] */ MatcherIndex(41),
/* [90] */ MatcherIndex(7),
/* [91] */ MatcherIndex(11),
/* [92] */ MatcherIndex(41),
/* [93] */ MatcherIndex(8),
/* [94] */ MatcherIndex(11),
/* [95] */ MatcherIndex(41),
/* [96] */ MatcherIndex(9),
/* [97] */ MatcherIndex(11),
/* [98] */ MatcherIndex(21),
/* [99] */ MatcherIndex(2),
/* [100] */ MatcherIndex(0),
/* [101] */ MatcherIndex(21),
/* [102] */ MatcherIndex(1),
/* [103] */ MatcherIndex(0),
/* [104] */ MatcherIndex(21),
/* [105] */ MatcherIndex(0),
/* [106] */ MatcherIndex(4),
/* [107] */ MatcherIndex(44),
/* [108] */ MatcherIndex(33),
/* [109] */ MatcherIndex(9),
/* [110] */ MatcherIndex(5),
/* [111] */ MatcherIndex(9),
/* [112] */ MatcherIndex(2),
/* [113] */ MatcherIndex(44),
/* [114] */ MatcherIndex(34),
/* [115] */ MatcherIndex(10),
/* [116] */ MatcherIndex(5),
/* [117] */ MatcherIndex(44),
/* [118] */ MatcherIndex(35),
/* [119] */ MatcherIndex(44),
/* [120] */ MatcherIndex(36),
/* [121] */ MatcherIndex(9),
/* [122] */ MatcherIndex(1),
/* [123] */ MatcherIndex(10),
/* [124] */ MatcherIndex(1),
/* [125] */ MatcherIndex(32),
/* [126] */ MatcherIndex(0),
/* [127] */ MatcherIndex(9),
/* [128] */ MatcherIndex(7),
/* [129] */ MatcherIndex(9),
/* [130] */ MatcherIndex(3),
/* [131] */ MatcherIndex(9),
/* [132] */ MatcherIndex(8),
/* [133] */ MatcherIndex(10),
/* [134] */ MatcherIndex(8),
/* [135] */ MatcherIndex(10),
/* [136] */ MatcherIndex(2),
/* [137] */ MatcherIndex(9),
/* [138] */ MatcherIndex(0),
/* [139] */ MatcherIndex(10),
/* [140] */ MatcherIndex(0),
/* [141] */ MatcherIndex(46),
/* [142] */ MatcherIndex(6),
/* [143] */ MatcherIndex(45),
/* [144] */ MatcherIndex(47),
/* [145] */ MatcherIndex(37),
/* [146] */ MatcherIndex(49),
/* [147] */ MatcherIndex(48),
};
static_assert(MatcherIndicesIndex::CanIndex(kMatcherIndices),
"MatcherIndicesIndex is not large enough to index kMatcherIndices");
constexpr ParameterInfo kParameters[] = {
{
/* [0] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(0),
},
{
/* [1] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [2] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [3] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [4] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [5] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [6] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(31),
},
{
/* [7] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [8] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [9] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [10] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [11] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [12] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [13] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [14] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [15] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [16] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [17] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [18] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(37),
},
{
/* [19] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [20] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [21] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [22] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [23] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(135),
},
{
/* [24] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(107),
},
{
/* [25] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [26] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [27] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [28] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [29] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [30] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [31] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [32] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [33] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [34] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [35] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [36] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(107),
},
{
/* [37] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [38] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [39] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [40] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [41] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [42] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [43] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [44] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [45] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [46] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(31),
},
{
/* [47] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [48] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [49] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [50] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(127),
},
{
/* [51] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [52] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [53] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [54] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [55] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(129),
},
{
/* [56] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(31),
},
{
/* [57] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [58] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [59] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [60] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [61] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [62] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [63] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [64] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [65] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [66] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(37),
},
{
/* [67] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [68] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [69] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [70] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(135),
},
{
/* [71] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(31),
},
{
/* [72] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [73] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [74] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [75] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [76] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(40),
},
{
/* [77] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [78] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [79] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [80] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [81] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [82] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [83] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [84] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [85] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [86] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(107),
},
{
/* [87] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [88] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [89] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [90] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [91] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [92] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [93] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [94] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [95] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [96] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(107),
},
{
/* [97] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [98] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [99] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [100] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [101] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [102] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [103] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [104] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [105] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [106] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(117),
},
{
/* [107] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [108] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [109] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [110] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [111] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
/* [112] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [113] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [114] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [115] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [116] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(0),
},
{
/* [117] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [118] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [119] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [120] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(117),
},
{
/* [121] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [122] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [123] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [124] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
/* [125] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [126] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [127] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [128] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(29),
},
{
/* [129] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [130] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [131] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [132] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(32),
},
{
/* [133] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [134] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [135] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [136] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(35),
},
{
/* [137] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(123),
},
{
/* [138] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [139] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [140] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(38),
},
{
/* [141] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(123),
},
{
/* [142] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [143] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [144] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(125),
},
{
/* [145] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [146] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [147] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [148] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(108),
},
{
/* [149] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [150] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [151] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [152] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(114),
},
{
/* [153] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(123),
},
{
/* [154] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [155] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [156] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(145),
},
{
/* [157] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [158] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [159] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [160] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(28),
},
{
/* [161] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [162] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [163] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [164] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(37),
},
{
/* [165] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [166] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [167] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [168] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(40),
},
{
/* [169] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [170] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [171] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [172] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [173] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [174] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [175] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [176] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(31),
},
{
/* [177] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [178] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [179] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [180] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [181] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [182] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [183] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [184] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(37),
},
{
/* [185] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [186] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [187] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(135),
},
{
/* [188] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(40),
},
{
/* [189] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [190] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [191] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [192] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [193] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [194] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [195] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [196] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(107),
},
{
/* [197] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [198] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [199] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [200] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [201] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [202] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [203] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [204] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(117),
},
{
/* [205] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
/* [206] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [207] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [208] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
/* [209] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [210] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [211] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [212] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [213] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [214] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [215] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [216] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(62),
},
{
/* [217] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [218] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(68),
},
{
/* [219] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [220] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(66),
},
{
/* [221] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [222] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(72),
},
{
/* [223] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [224] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(70),
},
{
/* [225] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(137),
},
{
/* [226] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [227] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [228] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(74),
},
{
/* [229] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(137),
},
{
/* [230] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(68),
},
{
/* [231] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [232] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(77),
},
{
/* [233] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(137),
},
{
/* [234] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(72),
},
{
/* [235] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [236] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(80),
},
{
/* [237] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [238] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [239] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [240] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(83),
},
{
/* [241] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [242] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(68),
},
{
/* [243] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [244] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(86),
},
{
/* [245] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [246] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(72),
},
{
/* [247] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [248] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(89),
},
{
/* [249] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [250] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [251] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [252] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(92),
},
{
/* [253] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [254] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(68),
},
{
/* [255] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [256] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(95),
},
{
/* [257] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [258] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(72),
},
{
/* [259] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [260] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(46),
},
{
/* [261] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [262] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [263] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [264] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [265] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [266] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(52),
},
{
/* [267] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(135),
},
{
/* [268] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [269] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(55),
},
{
/* [270] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(135),
},
{
/* [271] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(11),
},
{
/* [272] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(28),
},
{
/* [273] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [274] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [275] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(4),
},
{
/* [276] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [277] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [278] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(104),
},
{
/* [279] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(25),
},
{
/* [280] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(25),
},
{
/* [281] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(63),
},
{
/* [282] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(63),
},
{
/* [283] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(63),
},
{
/* [284] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(5),
},
{
/* [285] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [286] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(32),
},
{
/* [287] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [288] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(35),
},
{
/* [289] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [290] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(38),
},
{
/* [291] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [292] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(41),
},
{
/* [293] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [294] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(44),
},
{
/* [295] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(8),
},
{
/* [296] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(108),
},
{
/* [297] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [298] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(114),
},
{
/* [299] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [300] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(118),
},
{
/* [301] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [302] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(120),
},
{
/* [303] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [304] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(13),
},
{
/* [305] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(17),
},
{
/* [306] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(21),
},
{
/* [307] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [308] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(21),
},
{
/* [309] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(101),
},
{
/* [310] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(17),
},
{
/* [311] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(101),
},
{
/* [312] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
};
static_assert(ParameterIndex::CanIndex(kParameters),
"ParameterIndex is not large enough to index kParameters");
constexpr TemplateInfo kTemplates[] = {
{
/* [0] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(144),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [1] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [2] */
/* name */ "I",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [3] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [4] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(144),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [5] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [6] */
/* name */ "B",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [7] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [8] */
/* name */ "D",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [9] */
/* name */ "F",
/* matcher_indices */ MatcherIndicesIndex(59),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [10] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(115),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [11] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [12] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [13] */
/* name */ "F",
/* matcher_indices */ MatcherIndicesIndex(63),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [14] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(115),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [15] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [16] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [17] */
/* name */ "F",
/* matcher_indices */ MatcherIndicesIndex(67),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [18] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(115),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [19] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [20] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [21] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(143),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [22] */
/* name */ "K",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [23] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [24] */
/* name */ "R",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [25] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [26] */
/* name */ "U",
/* matcher_indices */ MatcherIndicesIndex(63),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [27] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(142),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [28] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(6),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [29] */
/* name */ "B",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [30] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [31] */
/* name */ "I",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [32] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [33] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [34] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(144),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [35] */
/* name */ "C",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [36] */
/* name */ "D",
/* matcher_indices */ MatcherIndicesIndex(141),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [37] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(143),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [38] */
/* name */ "N",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [39] */
/* name */ "M",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [40] */
/* name */ "I",
/* matcher_indices */ MatcherIndicesIndex(63),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [41] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [42] */
/* name */ "N",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [43] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(143),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [44] */
/* name */ "F",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [45] */
/* name */ "A",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [46] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(144),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [47] */
/* name */ "S",
/* matcher_indices */ MatcherIndicesIndex(146),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [48] */
/* name */ "N",
/* matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [49] */
/* name */ "T",
/* matcher_indices */ MatcherIndicesIndex(147),
/* 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),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(272),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [1] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(6),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [2] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(56),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [3] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(56),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [4] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(176),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [5] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(12),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [6] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(61),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [7] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(180),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [8] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(61),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [9] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(18),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [10] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(66),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [11] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(66),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [12] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(184),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [13] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(76),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [14] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(188),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [15] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(81),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [16] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(192),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [17] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(36),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [18] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(196),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [19] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(120),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [20] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(41),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [21] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(200),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [22] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(124),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [23] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(56),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [24] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(6),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [25] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(56),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [26] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(71),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [27] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(6),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [28] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(61),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [29] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(12),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [30] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(61),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [31] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(12),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [32] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(66),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [33] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(18),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [34] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(66),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [35] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 3,
/* templates */ TemplateIndex(34),
/* parameters */ ParameterIndex(18),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [36] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(188),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [37] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(76),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [38] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(192),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [39] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(81),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [40] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(86),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [41] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(86),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [42] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(91),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [43] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(91),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [44] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(204),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [45] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(208),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [46] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(128),
/* return_matcher_indices */ MatcherIndicesIndex(63),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [47] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(132),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [48] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(136),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [49] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(140),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [50] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(292),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [51] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(294),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [52] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(144),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [53] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(148),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [54] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(152),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [55] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(300),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [56] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(302),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [57] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(156),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [58] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 2,
/* templates */ TemplateIndex(44),
/* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(63),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [59] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 2,
/* templates */ TemplateIndex(44),
/* parameters */ ParameterIndex(263),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [60] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 2,
/* templates */ TemplateIndex(44),
/* parameters */ ParameterIndex(266),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [61] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_templates */ 2,
/* templates */ TemplateIndex(44),
/* parameters */ ParameterIndex(269),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [62] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(160),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [63] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(46),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [64] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(46),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [65] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(51),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [66] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 4,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(51),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [67] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(164),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [68] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(168),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [69] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(172),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [70] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(36),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [71] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(36),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [72] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(41),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [73] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(41),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [74] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(120),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [75] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(124),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [76] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(9),
/* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [77] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(13),
/* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(68),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [78] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(17),
/* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(72),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [79] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(9),
/* parameters */ ParameterIndex(263),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [80] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(13),
/* parameters */ ParameterIndex(263),
/* return_matcher_indices */ MatcherIndicesIndex(68),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [81] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(17),
/* parameters */ ParameterIndex(263),
/* return_matcher_indices */ MatcherIndicesIndex(72),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [82] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(9),
/* parameters */ ParameterIndex(266),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [83] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(13),
/* parameters */ ParameterIndex(266),
/* return_matcher_indices */ MatcherIndicesIndex(68),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [84] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(17),
/* parameters */ ParameterIndex(266),
/* return_matcher_indices */ MatcherIndicesIndex(72),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [85] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(9),
/* parameters */ ParameterIndex(269),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [86] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(13),
/* parameters */ ParameterIndex(269),
/* return_matcher_indices */ MatcherIndicesIndex(68),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [87] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 4,
/* templates */ TemplateIndex(17),
/* parameters */ ParameterIndex(269),
/* return_matcher_indices */ MatcherIndicesIndex(72),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [88] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(212),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [89] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(216),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [90] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(220),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [91] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(224),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [92] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(228),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [93] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(232),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [94] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(236),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [95] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(240),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [96] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(244),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [97] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(248),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [98] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(252),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [99] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(256),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [100] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(128),
/* return_matcher_indices */ MatcherIndicesIndex(63),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [101] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(286),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [102] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(288),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [103] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(290),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [104] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(292),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [105] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(4),
/* parameters */ ParameterIndex(294),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [106] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(296),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [107] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(298),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [108] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(300),
/* return_matcher_indices */ MatcherIndicesIndex(131),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [109] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(302),
/* return_matcher_indices */ MatcherIndicesIndex(133),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [110] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(128),
/* return_matcher_indices */ MatcherIndicesIndex(28),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [111] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(286),
/* return_matcher_indices */ MatcherIndicesIndex(31),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [112] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(288),
/* return_matcher_indices */ MatcherIndicesIndex(34),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [113] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(290),
/* return_matcher_indices */ MatcherIndicesIndex(37),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [114] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(292),
/* return_matcher_indices */ MatcherIndicesIndex(40),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [115] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(46),
/* parameters */ ParameterIndex(294),
/* return_matcher_indices */ MatcherIndicesIndex(43),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [116] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(47),
/* parameters */ ParameterIndex(296),
/* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [117] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(47),
/* parameters */ ParameterIndex(298),
/* return_matcher_indices */ MatcherIndicesIndex(113),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [118] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(47),
/* parameters */ ParameterIndex(300),
/* return_matcher_indices */ MatcherIndicesIndex(117),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [119] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 1,
/* templates */ TemplateIndex(47),
/* parameters */ ParameterIndex(302),
/* return_matcher_indices */ MatcherIndicesIndex(119),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [120] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 4,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(128),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [121] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 4,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(132),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [122] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 4,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(136),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [123] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 4,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(140),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [124] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 4,
/* templates */ TemplateIndex(0),
/* parameters */ ParameterIndex(144),
/* return_matcher_indices */ MatcherIndicesIndex(64),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [125] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(31),
/* parameters */ ParameterIndex(148),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [126] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(31),
/* parameters */ ParameterIndex(152),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [127] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(31),
/* parameters */ ParameterIndex(156),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [128] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(36),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [129] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(36),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [130] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(41),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [131] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 3,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(41),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [132] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(120),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [133] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 2,
/* templates */ TemplateIndex(28),
/* parameters */ ParameterIndex(124),
/* return_matcher_indices */ MatcherIndicesIndex(60),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [134] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(24),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [135] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(96),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [136] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(30),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [137] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(101),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [138] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(106),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [139] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(111),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [140] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(24),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [141] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(24),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [142] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(30),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [143] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 2,
/* templates */ TemplateIndex(7),
/* parameters */ ParameterIndex(30),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [144] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(106),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [145] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(111),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [146] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 1,
/* templates */ TemplateIndex(49),
/* parameters */ ParameterIndex(275),
/* return_matcher_indices */ MatcherIndicesIndex(3),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [147] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 2,
/* templates */ TemplateIndex(48),
/* parameters */ ParameterIndex(278),
/* return_matcher_indices */ MatcherIndicesIndex(25),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [148] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(40),
/* parameters */ ParameterIndex(284),
/* return_matcher_indices */ MatcherIndicesIndex(63),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [149] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(25),
/* parameters */ ParameterIndex(116),
/* return_matcher_indices */ MatcherIndicesIndex(3),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [150] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 6,
/* num_templates */ 3,
/* templates */ TemplateIndex(25),
/* parameters */ ParameterIndex(0),
/* return_matcher_indices */ MatcherIndicesIndex(3),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [151] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 3,
/* templates */ TemplateIndex(25),
/* parameters */ ParameterIndex(0),
/* return_matcher_indices */ MatcherIndicesIndex(3),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [152] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 4,
/* num_templates */ 3,
/* templates */ TemplateIndex(25),
/* parameters */ ParameterIndex(116),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [153] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(42),
/* parameters */ ParameterIndex(279),
/* return_matcher_indices */ MatcherIndicesIndex(8),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [154] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 4,
/* templates */ TemplateIndex(21),
/* parameters */ ParameterIndex(304),
/* return_matcher_indices */ MatcherIndicesIndex(9),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [155] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 3,
/* templates */ TemplateIndex(37),
/* parameters */ ParameterIndex(306),
/* return_matcher_indices */ MatcherIndicesIndex(21),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [156] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 3,
/* templates */ TemplateIndex(37),
/* parameters */ ParameterIndex(308),
/* return_matcher_indices */ MatcherIndicesIndex(98),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [157] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 3,
/* templates */ TemplateIndex(37),
/* parameters */ ParameterIndex(309),
/* return_matcher_indices */ MatcherIndicesIndex(98),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [158] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_templates */ 2,
/* templates */ TemplateIndex(37),
/* parameters */ ParameterIndex(311),
/* return_matcher_indices */ MatcherIndicesIndex(101),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [159] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(281),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [160] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(281),
/* return_matcher_indices */ MatcherIndicesIndex(63),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
};
static_assert(OverloadIndex::CanIndex(kOverloads),
"OverloadIndex is not large enough to index kOverloads");
constexpr IntrinsicInfo kBuiltins[] = {
{
/* [0] */
/* fn array_length<I : u32, A : access>(ptr<storage, struct_with_runtime_array, A>, I) -> u32 */
/* num overloads */ 1,
/* overloads */ OverloadIndex(148),
},
{
/* [1] */
/* fn atomic_and<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [2] */
/* fn atomic_compare_exchange<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, U, T, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(150),
},
{
/* [3] */
/* fn atomic_exchange<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [4] */
/* fn atomic_iadd<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [5] */
/* fn atomic_isub<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [6] */
/* fn atomic_load<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(151),
},
{
/* [7] */
/* fn atomic_or<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [8] */
/* fn atomic_smax<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [9] */
/* fn atomic_smin<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [10] */
/* fn atomic_store<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) */
/* num overloads */ 1,
/* overloads */ OverloadIndex(152),
},
{
/* [11] */
/* fn atomic_umax<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [12] */
/* fn atomic_umin<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [13] */
/* fn atomic_xor<T : iu32, U : u32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, U, U, T) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(149),
},
{
/* [14] */
/* fn dot<N : num, T : f32_f16>(vec<N, T>, vec<N, T>) -> T */
/* num overloads */ 1,
/* overloads */ OverloadIndex(153),
},
{
/* [15] */
/* fn image_dref_gather<A : f32, B : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, A, B) -> vec4<f32> */
/* fn image_dref_gather<A : f32, B : iu32, C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, A, B, vec2<C>) -> vec4<f32> */
/* fn image_dref_gather<A : f32, B : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, A, B) -> vec4<f32> */
/* fn image_dref_gather<A : f32, B : iu32, C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, A, B, vec2<C>) -> vec4<f32> */
/* fn image_dref_gather<A : f32, B : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, A, B) -> vec4<f32> */
/* fn image_dref_gather<A : f32, B : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, A, B) -> vec4<f32> */
/* num overloads */ 6,
/* overloads */ OverloadIndex(128),
},
{
/* [16] */
/* fn image_fetch<T : fiu32, C : iu32, I : iu32, S : iu32>(texture_1d<T>, C, I, S) -> vec4<T> */
/* fn image_fetch<T : fiu32, C : iu32, I : iu32, S : iu32>(texture_2d<T>, vec2<C>, I, S) -> vec4<T> */
/* fn image_fetch<T : fiu32, C : iu32, I : iu32, S : iu32>(texture_2d_array<T>, vec3<C>, I, S) -> vec4<T> */
/* fn image_fetch<T : fiu32, C : iu32, I : iu32, S : iu32>(texture_3d<T>, vec3<C>, I, S) -> vec4<T> */
/* fn image_fetch<T : fiu32, C : iu32, I : iu32, S : iu32>(texture_multisampled_2d<T>, vec2<C>, I, S) -> vec4<T> */
/* fn image_fetch<I : iu32, C : iu32, S : iu32>(texture_depth_2d, vec2<C>, I, S) -> vec4<f32> */
/* fn image_fetch<I : iu32, C : iu32, S : iu32>(texture_depth_2d_array, vec3<C>, I, S) -> vec4<f32> */
/* fn image_fetch<I : iu32, C : iu32, S : iu32>(texture_depth_multisampled_2d, vec2<C>, I, S) -> vec4<f32> */
/* num overloads */ 8,
/* overloads */ OverloadIndex(120),
},
{
/* [17] */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_1d<T>>, vec2<f32>, A, B) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, A, B) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, A, B, vec2<i32>) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, A, B) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32, C : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, A, B, vec2<C>) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_3d<T>>, vec2<f32>, A, B) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_cube<T>>, vec3<f32>, A, B) -> vec4<T> */
/* fn image_gather<T : fiu32, A : iu32, B : iu32>(sampled_image<texture_cube_array<T>>, vec4<f32>, A, B) -> vec4<T> */
/* fn image_gather<A : iu32, B : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, A, B) -> vec4<f32> */
/* fn image_gather<A : iu32, B : iu32, C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, A, B, vec2<C>) -> vec4<f32> */
/* fn image_gather<A : iu32, B : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, A, B) -> vec4<f32> */
/* fn image_gather<A : iu32, B : iu32, C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, A, B, vec2<C>) -> vec4<f32> */
/* fn image_gather<A : iu32, B : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, A, B) -> vec4<f32> */
/* fn image_gather<A : iu32, B : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, A, B) -> vec4<f32> */
/* num overloads */ 14,
/* overloads */ OverloadIndex(62),
},
{
/* [18] */
/* fn image_query_size<T : fiu32>(texture_1d<T>) -> u32 */
/* fn image_query_size<T : fiu32>(texture_2d<T>) -> vec2<u32> */
/* fn image_query_size<T : fiu32>(texture_2d_array<T>) -> vec3<u32> */
/* fn image_query_size<T : fiu32>(texture_3d<T>) -> vec3<u32> */
/* fn image_query_size<T : fiu32>(texture_cube<T>) -> vec2<u32> */
/* fn image_query_size<T : fiu32>(texture_cube_array<T>) -> vec3<u32> */
/* fn image_query_size<T : fiu32>(texture_multisampled_2d<T>) -> vec2<u32> */
/* fn image_query_size(texture_depth_2d) -> vec2<u32> */
/* fn image_query_size(texture_depth_2d_array) -> vec3<u32> */
/* fn image_query_size(texture_depth_cube) -> vec2<u32> */
/* fn image_query_size(texture_depth_cube_array) -> vec3<u32> */
/* fn image_query_size(texture_depth_multisampled_2d) -> vec2<u32> */
/* fn image_query_size<F : texel_format, A : access>(texture_storage_1d<F, A>) -> u32 */
/* fn image_query_size<F : texel_format, A : access>(texture_storage_2d<F, A>) -> vec2<u32> */
/* fn image_query_size<F : texel_format, A : access>(texture_storage_2d_array<F, A>) -> vec3<u32> */
/* fn image_query_size<F : texel_format, A : access>(texture_storage_3d<F, A>) -> vec3<u32> */
/* num overloads */ 16,
/* overloads */ OverloadIndex(46),
},
{
/* [19] */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_1d<T>, A) -> u32 */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_2d<T>, A) -> vec2<u32> */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_2d_array<T>, A) -> vec3<u32> */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_3d<T>, A) -> vec3<u32> */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_cube<T>, A) -> vec2<u32> */
/* fn image_query_size_lod<T : fiu32, A : iu32>(texture_cube_array<T>, A) -> vec3<u32> */
/* fn image_query_size_lod<A : iu32>(texture_depth_2d, A) -> vec2<u32> */
/* fn image_query_size_lod<A : iu32>(texture_depth_2d_array, A) -> vec3<u32> */
/* fn image_query_size_lod<A : iu32>(texture_depth_cube, A) -> vec2<u32> */
/* fn image_query_size_lod<A : iu32>(texture_depth_cube_array, A) -> vec3<u32> */
/* num overloads */ 10,
/* overloads */ OverloadIndex(100),
},
{
/* [20] */
/* fn image_read<F : f32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_1d<F, A>, C, S) -> vec4<f32> */
/* fn image_read<F : i32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_1d<F, A>, C, S) -> vec4<i32> */
/* fn image_read<F : u32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_1d<F, A>, C, S) -> vec4<u32> */
/* fn image_read<F : f32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d<F, A>, vec2<C>, S) -> vec4<f32> */
/* fn image_read<F : i32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d<F, A>, vec2<C>, S) -> vec4<i32> */
/* fn image_read<F : u32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d<F, A>, vec2<C>, S) -> vec4<u32> */
/* fn image_read<F : f32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d_array<F, A>, vec3<C>, S) -> vec4<f32> */
/* fn image_read<F : i32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d_array<F, A>, vec3<C>, S) -> vec4<i32> */
/* fn image_read<F : u32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_2d_array<F, A>, vec3<C>, S) -> vec4<u32> */
/* fn image_read<F : f32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_3d<F, A>, vec3<C>, S) -> vec4<f32> */
/* fn image_read<F : i32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_3d<F, A>, vec3<C>, S) -> vec4<i32> */
/* fn image_read<F : u32_texel_format, A : readable, C : iu32, S : iu32>(texture_storage_3d<F, A>, vec3<C>, S) -> vec4<u32> */
/* num overloads */ 12,
/* overloads */ OverloadIndex(76),
},
{
/* [21] */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_1d<T>>, f32, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, f32, vec3<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, vec3<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube<T>>, vec3<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube_array<T>>, vec4<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube_array<T>>, vec4<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, C, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, C) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, C, vec2<D>) -> vec4<f32> */
/* fn image_sample_implicit_lod<C : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, C) -> vec4<f32> */
/* num overloads */ 23,
/* overloads */ OverloadIndex(0),
},
{
/* [22] */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, vec2<f32>, vec2<f32>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, vec2<f32>, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d<T>>, vec2<f32>, C, vec2<f32>, vec2<f32>, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, vec2<f32>, vec2<f32>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_2d_array<T>>, vec3<f32>, C, vec2<f32>, vec2<f32>, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, vec3<f32>, vec3<f32>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, f32, vec3<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32, D : iu32>(sampled_image<texture_3d<T>>, vec3<f32>, C, vec3<f32>, vec3<f32>, vec3<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube<T>>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube<T>>, vec3<f32>, C, vec3<f32>, vec3<f32>) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube_array<T>>, vec4<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<T : fiu32, C : iu32>(sampled_image<texture_cube_array<T>>, vec4<f32>, C, vec3<f32>, vec3<f32>) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, C, f32, vec2<D>) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, C, f32) -> vec4<f32> */
/* fn image_sample_explicit_lod<C : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, C, f32) -> vec4<f32> */
/* num overloads */ 23,
/* overloads */ OverloadIndex(23),
},
{
/* [23] */
/* fn image_sample_dref_implicit_lod<C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, f32, C) -> f32 */
/* fn image_sample_dref_implicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, f32, C, vec2<D>) -> f32 */
/* fn image_sample_dref_implicit_lod<C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, f32, C) -> f32 */
/* fn image_sample_dref_implicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, f32, C, vec2<D>) -> f32 */
/* fn image_sample_dref_implicit_lod<C : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, f32, C) -> f32 */
/* fn image_sample_dref_implicit_lod<C : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, f32, C) -> f32 */
/* num overloads */ 6,
/* overloads */ OverloadIndex(134),
},
{
/* [24] */
/* fn image_sample_dref_explicit_lod<C : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, f32, C, f32) -> f32 */
/* fn image_sample_dref_explicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d>, vec2<f32>, f32, C, f32, vec2<D>) -> f32 */
/* fn image_sample_dref_explicit_lod<C : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, f32, C, f32) -> f32 */
/* fn image_sample_dref_explicit_lod<C : iu32, D : iu32>(sampled_image<texture_depth_2d_array>, vec3<f32>, f32, C, f32, vec2<D>) -> f32 */
/* fn image_sample_dref_explicit_lod<C : iu32>(sampled_image<texture_depth_cube>, vec3<f32>, f32, C, f32) -> f32 */
/* fn image_sample_dref_explicit_lod<C : iu32>(sampled_image<texture_depth_cube_array>, vec4<f32>, f32, C, f32) -> f32 */
/* num overloads */ 6,
/* overloads */ OverloadIndex(140),
},
{
/* [25] */
/* fn image_write<C : iu32, D : iu32>(texture_storage_1d<f32_texel_format, writable>, C, vec4<f32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_1d<i32_texel_format, writable>, C, vec4<i32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_1d<u32_texel_format, writable>, C, vec4<u32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d<f32_texel_format, writable>, vec2<C>, vec4<f32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d<i32_texel_format, writable>, vec2<C>, vec4<i32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d<u32_texel_format, writable>, vec2<C>, vec4<u32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d_array<f32_texel_format, writable>, vec3<C>, vec4<f32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d_array<i32_texel_format, writable>, vec3<C>, vec4<i32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_2d_array<u32_texel_format, writable>, vec3<C>, vec4<u32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_3d<f32_texel_format, writable>, vec3<C>, vec4<f32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_3d<i32_texel_format, writable>, vec3<C>, vec4<i32>, D) */
/* fn image_write<C : iu32, D : iu32>(texture_storage_3d<u32_texel_format, writable>, vec3<C>, vec4<u32>, D) */
/* num overloads */ 12,
/* overloads */ OverloadIndex(88),
},
{
/* [26] */
/* fn matrix_times_matrix<T : f32_f16, K : num, C : num, R : num>(mat<K, R, T>, mat<C, K, T>) -> mat<C, R, T> */
/* num overloads */ 1,
/* overloads */ OverloadIndex(154),
},
{
/* [27] */
/* fn matrix_times_scalar<T : f32_f16, N : num, M : num>(mat<N, M, T>, T) -> mat<N, M, T> */
/* num overloads */ 1,
/* overloads */ OverloadIndex(155),
},
{
/* [28] */
/* fn matrix_times_vector<T : f32_f16, N : num, M : num>(mat<N, M, T>, vec<N, T>) -> vec<M, T> */
/* num overloads */ 1,
/* overloads */ OverloadIndex(156),
},
{
/* [29] */
/* fn sampled_image<T : fiu32, S : samplers>(texture_1d<T>, S) -> sampled_image<texture_1d<T>> */
/* fn sampled_image<T : fiu32, S : samplers>(texture_2d<T>, S) -> sampled_image<texture_2d<T>> */
/* fn sampled_image<T : fiu32, S : samplers>(texture_2d_array<T>, S) -> sampled_image<texture_2d_array<T>> */
/* fn sampled_image<T : fiu32, S : samplers>(texture_3d<T>, S) -> sampled_image<texture_3d<T>> */
/* fn sampled_image<T : fiu32, S : samplers>(texture_cube<T>, S) -> sampled_image<texture_cube<T>> */
/* fn sampled_image<T : fiu32, S : samplers>(texture_cube_array<T>, S) -> sampled_image<texture_cube_array<T>> */
/* fn sampled_image<S : samplers>(texture_depth_2d, S) -> sampled_image<texture_depth_2d> */
/* fn sampled_image<S : samplers>(texture_depth_2d_array, S) -> sampled_image<texture_depth_2d_array> */
/* fn sampled_image<S : samplers>(texture_depth_cube, S) -> sampled_image<texture_depth_cube> */
/* fn sampled_image<S : samplers>(texture_depth_cube_array, S) -> sampled_image<texture_depth_cube_array> */
/* num overloads */ 10,
/* overloads */ OverloadIndex(110),
},
{
/* [30] */
/* fn select<T : scalar>(bool, T, T) -> T */
/* fn select<N : num, T : scalar>(vec<N, bool>, vec<N, T>, vec<N, T>) -> vec<N, T> */
/* num overloads */ 2,
/* overloads */ OverloadIndex(146),
},
{
/* [31] */
/* fn vector_times_matrix<T : f32_f16, N : num, M : num>(vec<N, T>, mat<M, N, T>) -> vec<M, T> */
/* num overloads */ 1,
/* overloads */ OverloadIndex(157),
},
{
/* [32] */
/* fn vector_times_scalar<T : f32_f16, N : num>(vec<N, T>, T) -> vec<N, T> */
/* num overloads */ 1,
/* overloads */ OverloadIndex(158),
},
{
/* [33] */
/* fn sdot(u32, u32, u32) -> i32 */
/* num overloads */ 1,
/* overloads */ OverloadIndex(159),
},
{
/* [34] */
/* fn udot(u32, u32, u32) -> u32 */
/* num overloads */ 1,
/* overloads */ OverloadIndex(160),
},
};
// 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::spirv::intrinsic