1// Copyright 2021 The Tint Authors. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15//////////////////////////////////////////////////////////////////////////////// 16// File generated by tools/intrinsic-gen 17// using the template: 18// src/intrinsic_table.inl.tmpl 19// and the intrinsic defintion file: 20// src/intrinsics.def 21// 22// Do not modify this file directly 23//////////////////////////////////////////////////////////////////////////////// 24 25// clang-format off 26 27/// TypeMatcher for 'type bool' 28/// @see src/intrinsics.def:68:6 29class Bool : public TypeMatcher { 30 public: 31 /// Checks whether the given type matches the matcher rules. 32 /// Match may close open types and numbers in state. 33 /// @param state the MatchState 34 /// @param type the type to match 35 /// @returns the canonicalized type on match, otherwise nullptr 36 const sem::Type* Match(MatchState& state, 37 const sem::Type* type) const override; 38 /// @param state the MatchState 39 /// @return a string representation of the matcher. 40 std::string String(MatchState& state) const override; 41}; 42 43const sem::Type* Bool::Match(MatchState& state, const sem::Type* ty) const { 44 if (!match_bool(ty)) { 45 return nullptr; 46 } 47 return build_bool(state); 48} 49 50std::string Bool::String(MatchState&) const { 51 return "bool"; 52} 53 54/// TypeMatcher for 'type f32' 55/// @see src/intrinsics.def:69:6 56class F32 : public TypeMatcher { 57 public: 58 /// Checks whether the given type matches the matcher rules. 59 /// Match may close open types and numbers in state. 60 /// @param state the MatchState 61 /// @param type the type to match 62 /// @returns the canonicalized type on match, otherwise nullptr 63 const sem::Type* Match(MatchState& state, 64 const sem::Type* type) const override; 65 /// @param state the MatchState 66 /// @return a string representation of the matcher. 67 std::string String(MatchState& state) const override; 68}; 69 70const sem::Type* F32::Match(MatchState& state, const sem::Type* ty) const { 71 if (!match_f32(ty)) { 72 return nullptr; 73 } 74 return build_f32(state); 75} 76 77std::string F32::String(MatchState&) const { 78 return "f32"; 79} 80 81/// TypeMatcher for 'type i32' 82/// @see src/intrinsics.def:70:6 83class I32 : public TypeMatcher { 84 public: 85 /// Checks whether the given type matches the matcher rules. 86 /// Match may close open types and numbers in state. 87 /// @param state the MatchState 88 /// @param type the type to match 89 /// @returns the canonicalized type on match, otherwise nullptr 90 const sem::Type* Match(MatchState& state, 91 const sem::Type* type) const override; 92 /// @param state the MatchState 93 /// @return a string representation of the matcher. 94 std::string String(MatchState& state) const override; 95}; 96 97const sem::Type* I32::Match(MatchState& state, const sem::Type* ty) const { 98 if (!match_i32(ty)) { 99 return nullptr; 100 } 101 return build_i32(state); 102} 103 104std::string I32::String(MatchState&) const { 105 return "i32"; 106} 107 108/// TypeMatcher for 'type u32' 109/// @see src/intrinsics.def:71:6 110class U32 : public TypeMatcher { 111 public: 112 /// Checks whether the given type matches the matcher rules. 113 /// Match may close open types and numbers in state. 114 /// @param state the MatchState 115 /// @param type the type to match 116 /// @returns the canonicalized type on match, otherwise nullptr 117 const sem::Type* Match(MatchState& state, 118 const sem::Type* type) const override; 119 /// @param state the MatchState 120 /// @return a string representation of the matcher. 121 std::string String(MatchState& state) const override; 122}; 123 124const sem::Type* U32::Match(MatchState& state, const sem::Type* ty) const { 125 if (!match_u32(ty)) { 126 return nullptr; 127 } 128 return build_u32(state); 129} 130 131std::string U32::String(MatchState&) const { 132 return "u32"; 133} 134 135/// TypeMatcher for 'type vec2' 136/// @see src/intrinsics.def:72:6 137class Vec2 : public TypeMatcher { 138 public: 139 /// Checks whether the given type matches the matcher rules. 140 /// Match may close open types and numbers in state. 141 /// @param state the MatchState 142 /// @param type the type to match 143 /// @returns the canonicalized type on match, otherwise nullptr 144 const sem::Type* Match(MatchState& state, 145 const sem::Type* type) const override; 146 /// @param state the MatchState 147 /// @return a string representation of the matcher. 148 std::string String(MatchState& state) const override; 149}; 150 151const sem::Type* Vec2::Match(MatchState& state, const sem::Type* ty) const { 152 const sem::Type* T = nullptr; 153 if (!match_vec2(ty, T)) { 154 return nullptr; 155 } 156 T = state.Type(T); 157 if (T == nullptr) { 158 return nullptr; 159 } 160 return build_vec2(state, T); 161} 162 163std::string Vec2::String(MatchState& state) const { 164 const std::string T = state.TypeName(); 165 return "vec2<" + T + ">"; 166} 167 168/// TypeMatcher for 'type vec3' 169/// @see src/intrinsics.def:73:6 170class Vec3 : public TypeMatcher { 171 public: 172 /// Checks whether the given type matches the matcher rules. 173 /// Match may close open types and numbers in state. 174 /// @param state the MatchState 175 /// @param type the type to match 176 /// @returns the canonicalized type on match, otherwise nullptr 177 const sem::Type* Match(MatchState& state, 178 const sem::Type* type) const override; 179 /// @param state the MatchState 180 /// @return a string representation of the matcher. 181 std::string String(MatchState& state) const override; 182}; 183 184const sem::Type* Vec3::Match(MatchState& state, const sem::Type* ty) const { 185 const sem::Type* T = nullptr; 186 if (!match_vec3(ty, T)) { 187 return nullptr; 188 } 189 T = state.Type(T); 190 if (T == nullptr) { 191 return nullptr; 192 } 193 return build_vec3(state, T); 194} 195 196std::string Vec3::String(MatchState& state) const { 197 const std::string T = state.TypeName(); 198 return "vec3<" + T + ">"; 199} 200 201/// TypeMatcher for 'type vec4' 202/// @see src/intrinsics.def:74:6 203class Vec4 : public TypeMatcher { 204 public: 205 /// Checks whether the given type matches the matcher rules. 206 /// Match may close open types and numbers in state. 207 /// @param state the MatchState 208 /// @param type the type to match 209 /// @returns the canonicalized type on match, otherwise nullptr 210 const sem::Type* Match(MatchState& state, 211 const sem::Type* type) const override; 212 /// @param state the MatchState 213 /// @return a string representation of the matcher. 214 std::string String(MatchState& state) const override; 215}; 216 217const sem::Type* Vec4::Match(MatchState& state, const sem::Type* ty) const { 218 const sem::Type* T = nullptr; 219 if (!match_vec4(ty, T)) { 220 return nullptr; 221 } 222 T = state.Type(T); 223 if (T == nullptr) { 224 return nullptr; 225 } 226 return build_vec4(state, T); 227} 228 229std::string Vec4::String(MatchState& state) const { 230 const std::string T = state.TypeName(); 231 return "vec4<" + T + ">"; 232} 233 234/// TypeMatcher for 'type vec' 235/// @see src/intrinsics.def:75:37 236class Vec : public TypeMatcher { 237 public: 238 /// Checks whether the given type matches the matcher rules. 239 /// Match may close open types and numbers in state. 240 /// @param state the MatchState 241 /// @param type the type to match 242 /// @returns the canonicalized type on match, otherwise nullptr 243 const sem::Type* Match(MatchState& state, 244 const sem::Type* type) const override; 245 /// @param state the MatchState 246 /// @return a string representation of the matcher. 247 std::string String(MatchState& state) const override; 248}; 249 250const sem::Type* Vec::Match(MatchState& state, const sem::Type* ty) const { 251 Number N = Number::invalid; 252 const sem::Type* T = nullptr; 253 if (!match_vec(ty, N, T)) { 254 return nullptr; 255 } 256 N = state.Num(N); 257 if (!N.IsValid()) { 258 return nullptr; 259 } 260 T = state.Type(T); 261 if (T == nullptr) { 262 return nullptr; 263 } 264 return build_vec(state, N, T); 265} 266 267std::string Vec::String(MatchState& state) const { 268 const std::string N = state.NumName(); 269 const std::string T = state.TypeName(); 270 std::stringstream ss; 271 ss << "vec" << N << "<" << T << ">"; 272 return ss.str(); 273} 274 275/// TypeMatcher for 'type mat' 276/// @see src/intrinsics.def:76:37 277class Mat : public TypeMatcher { 278 public: 279 /// Checks whether the given type matches the matcher rules. 280 /// Match may close open types and numbers in state. 281 /// @param state the MatchState 282 /// @param type the type to match 283 /// @returns the canonicalized type on match, otherwise nullptr 284 const sem::Type* Match(MatchState& state, 285 const sem::Type* type) const override; 286 /// @param state the MatchState 287 /// @return a string representation of the matcher. 288 std::string String(MatchState& state) const override; 289}; 290 291const sem::Type* Mat::Match(MatchState& state, const sem::Type* ty) const { 292 Number N = Number::invalid; 293 Number M = Number::invalid; 294 const sem::Type* T = nullptr; 295 if (!match_mat(ty, N, M, T)) { 296 return nullptr; 297 } 298 N = state.Num(N); 299 if (!N.IsValid()) { 300 return nullptr; 301 } 302 M = state.Num(M); 303 if (!M.IsValid()) { 304 return nullptr; 305 } 306 T = state.Type(T); 307 if (T == nullptr) { 308 return nullptr; 309 } 310 return build_mat(state, N, M, T); 311} 312 313std::string Mat::String(MatchState& state) const { 314 const std::string N = state.NumName(); 315 const std::string M = state.NumName(); 316 const std::string T = state.TypeName(); 317 std::stringstream ss; 318 ss << "mat" << N << "x" << M << "<" << T << ">"; 319 return ss.str(); 320} 321 322/// TypeMatcher for 'type ptr' 323/// @see src/intrinsics.def:77:6 324class Ptr : public TypeMatcher { 325 public: 326 /// Checks whether the given type matches the matcher rules. 327 /// Match may close open types and numbers in state. 328 /// @param state the MatchState 329 /// @param type the type to match 330 /// @returns the canonicalized type on match, otherwise nullptr 331 const sem::Type* Match(MatchState& state, 332 const sem::Type* type) const override; 333 /// @param state the MatchState 334 /// @return a string representation of the matcher. 335 std::string String(MatchState& state) const override; 336}; 337 338const sem::Type* Ptr::Match(MatchState& state, const sem::Type* ty) const { 339 Number S = Number::invalid; 340 const sem::Type* T = nullptr; 341 Number A = Number::invalid; 342 if (!match_ptr(ty, S, T, A)) { 343 return nullptr; 344 } 345 S = state.Num(S); 346 if (!S.IsValid()) { 347 return nullptr; 348 } 349 T = state.Type(T); 350 if (T == nullptr) { 351 return nullptr; 352 } 353 A = state.Num(A); 354 if (!A.IsValid()) { 355 return nullptr; 356 } 357 return build_ptr(state, S, T, A); 358} 359 360std::string Ptr::String(MatchState& state) const { 361 const std::string S = state.NumName(); 362 const std::string T = state.TypeName(); 363 const std::string A = state.NumName(); 364 return "ptr<" + S + ", " + T + ", " + A + ">"; 365} 366 367/// TypeMatcher for 'type atomic' 368/// @see src/intrinsics.def:78:6 369class Atomic : public TypeMatcher { 370 public: 371 /// Checks whether the given type matches the matcher rules. 372 /// Match may close open types and numbers in state. 373 /// @param state the MatchState 374 /// @param type the type to match 375 /// @returns the canonicalized type on match, otherwise nullptr 376 const sem::Type* Match(MatchState& state, 377 const sem::Type* type) const override; 378 /// @param state the MatchState 379 /// @return a string representation of the matcher. 380 std::string String(MatchState& state) const override; 381}; 382 383const sem::Type* Atomic::Match(MatchState& state, const sem::Type* ty) const { 384 const sem::Type* T = nullptr; 385 if (!match_atomic(ty, T)) { 386 return nullptr; 387 } 388 T = state.Type(T); 389 if (T == nullptr) { 390 return nullptr; 391 } 392 return build_atomic(state, T); 393} 394 395std::string Atomic::String(MatchState& state) const { 396 const std::string T = state.TypeName(); 397 return "atomic<" + T + ">"; 398} 399 400/// TypeMatcher for 'type array' 401/// @see src/intrinsics.def:79:6 402class Array : public TypeMatcher { 403 public: 404 /// Checks whether the given type matches the matcher rules. 405 /// Match may close open types and numbers in state. 406 /// @param state the MatchState 407 /// @param type the type to match 408 /// @returns the canonicalized type on match, otherwise nullptr 409 const sem::Type* Match(MatchState& state, 410 const sem::Type* type) const override; 411 /// @param state the MatchState 412 /// @return a string representation of the matcher. 413 std::string String(MatchState& state) const override; 414}; 415 416const sem::Type* Array::Match(MatchState& state, const sem::Type* ty) const { 417 const sem::Type* T = nullptr; 418 if (!match_array(ty, T)) { 419 return nullptr; 420 } 421 T = state.Type(T); 422 if (T == nullptr) { 423 return nullptr; 424 } 425 return build_array(state, T); 426} 427 428std::string Array::String(MatchState& state) const { 429 const std::string T = state.TypeName(); 430 return "array<" + T + ">"; 431} 432 433/// TypeMatcher for 'type sampler' 434/// @see src/intrinsics.def:80:6 435class Sampler : public TypeMatcher { 436 public: 437 /// Checks whether the given type matches the matcher rules. 438 /// Match may close open types and numbers in state. 439 /// @param state the MatchState 440 /// @param type the type to match 441 /// @returns the canonicalized type on match, otherwise nullptr 442 const sem::Type* Match(MatchState& state, 443 const sem::Type* type) const override; 444 /// @param state the MatchState 445 /// @return a string representation of the matcher. 446 std::string String(MatchState& state) const override; 447}; 448 449const sem::Type* Sampler::Match(MatchState& state, const sem::Type* ty) const { 450 if (!match_sampler(ty)) { 451 return nullptr; 452 } 453 return build_sampler(state); 454} 455 456std::string Sampler::String(MatchState&) const { 457 return "sampler"; 458} 459 460/// TypeMatcher for 'type sampler_comparison' 461/// @see src/intrinsics.def:81:6 462class SamplerComparison : public TypeMatcher { 463 public: 464 /// Checks whether the given type matches the matcher rules. 465 /// Match may close open types and numbers in state. 466 /// @param state the MatchState 467 /// @param type the type to match 468 /// @returns the canonicalized type on match, otherwise nullptr 469 const sem::Type* Match(MatchState& state, 470 const sem::Type* type) const override; 471 /// @param state the MatchState 472 /// @return a string representation of the matcher. 473 std::string String(MatchState& state) const override; 474}; 475 476const sem::Type* SamplerComparison::Match(MatchState& state, const sem::Type* ty) const { 477 if (!match_sampler_comparison(ty)) { 478 return nullptr; 479 } 480 return build_sampler_comparison(state); 481} 482 483std::string SamplerComparison::String(MatchState&) const { 484 return "sampler_comparison"; 485} 486 487/// TypeMatcher for 'type texture_1d' 488/// @see src/intrinsics.def:82:6 489class Texture1D : public TypeMatcher { 490 public: 491 /// Checks whether the given type matches the matcher rules. 492 /// Match may close open types and numbers in state. 493 /// @param state the MatchState 494 /// @param type the type to match 495 /// @returns the canonicalized type on match, otherwise nullptr 496 const sem::Type* Match(MatchState& state, 497 const sem::Type* type) const override; 498 /// @param state the MatchState 499 /// @return a string representation of the matcher. 500 std::string String(MatchState& state) const override; 501}; 502 503const sem::Type* Texture1D::Match(MatchState& state, const sem::Type* ty) const { 504 const sem::Type* T = nullptr; 505 if (!match_texture_1d(ty, T)) { 506 return nullptr; 507 } 508 T = state.Type(T); 509 if (T == nullptr) { 510 return nullptr; 511 } 512 return build_texture_1d(state, T); 513} 514 515std::string Texture1D::String(MatchState& state) const { 516 const std::string T = state.TypeName(); 517 return "texture_1d<" + T + ">"; 518} 519 520/// TypeMatcher for 'type texture_2d' 521/// @see src/intrinsics.def:83:6 522class Texture2D : public TypeMatcher { 523 public: 524 /// Checks whether the given type matches the matcher rules. 525 /// Match may close open types and numbers in state. 526 /// @param state the MatchState 527 /// @param type the type to match 528 /// @returns the canonicalized type on match, otherwise nullptr 529 const sem::Type* Match(MatchState& state, 530 const sem::Type* type) const override; 531 /// @param state the MatchState 532 /// @return a string representation of the matcher. 533 std::string String(MatchState& state) const override; 534}; 535 536const sem::Type* Texture2D::Match(MatchState& state, const sem::Type* ty) const { 537 const sem::Type* T = nullptr; 538 if (!match_texture_2d(ty, T)) { 539 return nullptr; 540 } 541 T = state.Type(T); 542 if (T == nullptr) { 543 return nullptr; 544 } 545 return build_texture_2d(state, T); 546} 547 548std::string Texture2D::String(MatchState& state) const { 549 const std::string T = state.TypeName(); 550 return "texture_2d<" + T + ">"; 551} 552 553/// TypeMatcher for 'type texture_2d_array' 554/// @see src/intrinsics.def:84:6 555class Texture2DArray : public TypeMatcher { 556 public: 557 /// Checks whether the given type matches the matcher rules. 558 /// Match may close open types and numbers in state. 559 /// @param state the MatchState 560 /// @param type the type to match 561 /// @returns the canonicalized type on match, otherwise nullptr 562 const sem::Type* Match(MatchState& state, 563 const sem::Type* type) const override; 564 /// @param state the MatchState 565 /// @return a string representation of the matcher. 566 std::string String(MatchState& state) const override; 567}; 568 569const sem::Type* Texture2DArray::Match(MatchState& state, const sem::Type* ty) const { 570 const sem::Type* T = nullptr; 571 if (!match_texture_2d_array(ty, T)) { 572 return nullptr; 573 } 574 T = state.Type(T); 575 if (T == nullptr) { 576 return nullptr; 577 } 578 return build_texture_2d_array(state, T); 579} 580 581std::string Texture2DArray::String(MatchState& state) const { 582 const std::string T = state.TypeName(); 583 return "texture_2d_array<" + T + ">"; 584} 585 586/// TypeMatcher for 'type texture_3d' 587/// @see src/intrinsics.def:85:6 588class Texture3D : public TypeMatcher { 589 public: 590 /// Checks whether the given type matches the matcher rules. 591 /// Match may close open types and numbers in state. 592 /// @param state the MatchState 593 /// @param type the type to match 594 /// @returns the canonicalized type on match, otherwise nullptr 595 const sem::Type* Match(MatchState& state, 596 const sem::Type* type) const override; 597 /// @param state the MatchState 598 /// @return a string representation of the matcher. 599 std::string String(MatchState& state) const override; 600}; 601 602const sem::Type* Texture3D::Match(MatchState& state, const sem::Type* ty) const { 603 const sem::Type* T = nullptr; 604 if (!match_texture_3d(ty, T)) { 605 return nullptr; 606 } 607 T = state.Type(T); 608 if (T == nullptr) { 609 return nullptr; 610 } 611 return build_texture_3d(state, T); 612} 613 614std::string Texture3D::String(MatchState& state) const { 615 const std::string T = state.TypeName(); 616 return "texture_3d<" + T + ">"; 617} 618 619/// TypeMatcher for 'type texture_cube' 620/// @see src/intrinsics.def:86:6 621class TextureCube : public TypeMatcher { 622 public: 623 /// Checks whether the given type matches the matcher rules. 624 /// Match may close open types and numbers in state. 625 /// @param state the MatchState 626 /// @param type the type to match 627 /// @returns the canonicalized type on match, otherwise nullptr 628 const sem::Type* Match(MatchState& state, 629 const sem::Type* type) const override; 630 /// @param state the MatchState 631 /// @return a string representation of the matcher. 632 std::string String(MatchState& state) const override; 633}; 634 635const sem::Type* TextureCube::Match(MatchState& state, const sem::Type* ty) const { 636 const sem::Type* T = nullptr; 637 if (!match_texture_cube(ty, T)) { 638 return nullptr; 639 } 640 T = state.Type(T); 641 if (T == nullptr) { 642 return nullptr; 643 } 644 return build_texture_cube(state, T); 645} 646 647std::string TextureCube::String(MatchState& state) const { 648 const std::string T = state.TypeName(); 649 return "texture_cube<" + T + ">"; 650} 651 652/// TypeMatcher for 'type texture_cube_array' 653/// @see src/intrinsics.def:87:6 654class TextureCubeArray : public TypeMatcher { 655 public: 656 /// Checks whether the given type matches the matcher rules. 657 /// Match may close open types and numbers in state. 658 /// @param state the MatchState 659 /// @param type the type to match 660 /// @returns the canonicalized type on match, otherwise nullptr 661 const sem::Type* Match(MatchState& state, 662 const sem::Type* type) const override; 663 /// @param state the MatchState 664 /// @return a string representation of the matcher. 665 std::string String(MatchState& state) const override; 666}; 667 668const sem::Type* TextureCubeArray::Match(MatchState& state, const sem::Type* ty) const { 669 const sem::Type* T = nullptr; 670 if (!match_texture_cube_array(ty, T)) { 671 return nullptr; 672 } 673 T = state.Type(T); 674 if (T == nullptr) { 675 return nullptr; 676 } 677 return build_texture_cube_array(state, T); 678} 679 680std::string TextureCubeArray::String(MatchState& state) const { 681 const std::string T = state.TypeName(); 682 return "texture_cube_array<" + T + ">"; 683} 684 685/// TypeMatcher for 'type texture_multisampled_2d' 686/// @see src/intrinsics.def:88:6 687class TextureMultisampled2D : public TypeMatcher { 688 public: 689 /// Checks whether the given type matches the matcher rules. 690 /// Match may close open types and numbers in state. 691 /// @param state the MatchState 692 /// @param type the type to match 693 /// @returns the canonicalized type on match, otherwise nullptr 694 const sem::Type* Match(MatchState& state, 695 const sem::Type* type) const override; 696 /// @param state the MatchState 697 /// @return a string representation of the matcher. 698 std::string String(MatchState& state) const override; 699}; 700 701const sem::Type* TextureMultisampled2D::Match(MatchState& state, const sem::Type* ty) const { 702 const sem::Type* T = nullptr; 703 if (!match_texture_multisampled_2d(ty, T)) { 704 return nullptr; 705 } 706 T = state.Type(T); 707 if (T == nullptr) { 708 return nullptr; 709 } 710 return build_texture_multisampled_2d(state, T); 711} 712 713std::string TextureMultisampled2D::String(MatchState& state) const { 714 const std::string T = state.TypeName(); 715 return "texture_multisampled_2d<" + T + ">"; 716} 717 718/// TypeMatcher for 'type texture_depth_2d' 719/// @see src/intrinsics.def:89:6 720class TextureDepth2D : public TypeMatcher { 721 public: 722 /// Checks whether the given type matches the matcher rules. 723 /// Match may close open types and numbers in state. 724 /// @param state the MatchState 725 /// @param type the type to match 726 /// @returns the canonicalized type on match, otherwise nullptr 727 const sem::Type* Match(MatchState& state, 728 const sem::Type* type) const override; 729 /// @param state the MatchState 730 /// @return a string representation of the matcher. 731 std::string String(MatchState& state) const override; 732}; 733 734const sem::Type* TextureDepth2D::Match(MatchState& state, const sem::Type* ty) const { 735 if (!match_texture_depth_2d(ty)) { 736 return nullptr; 737 } 738 return build_texture_depth_2d(state); 739} 740 741std::string TextureDepth2D::String(MatchState&) const { 742 return "texture_depth_2d"; 743} 744 745/// TypeMatcher for 'type texture_depth_2d_array' 746/// @see src/intrinsics.def:90:6 747class TextureDepth2DArray : public TypeMatcher { 748 public: 749 /// Checks whether the given type matches the matcher rules. 750 /// Match may close open types and numbers in state. 751 /// @param state the MatchState 752 /// @param type the type to match 753 /// @returns the canonicalized type on match, otherwise nullptr 754 const sem::Type* Match(MatchState& state, 755 const sem::Type* type) const override; 756 /// @param state the MatchState 757 /// @return a string representation of the matcher. 758 std::string String(MatchState& state) const override; 759}; 760 761const sem::Type* TextureDepth2DArray::Match(MatchState& state, const sem::Type* ty) const { 762 if (!match_texture_depth_2d_array(ty)) { 763 return nullptr; 764 } 765 return build_texture_depth_2d_array(state); 766} 767 768std::string TextureDepth2DArray::String(MatchState&) const { 769 return "texture_depth_2d_array"; 770} 771 772/// TypeMatcher for 'type texture_depth_cube' 773/// @see src/intrinsics.def:91:6 774class TextureDepthCube : public TypeMatcher { 775 public: 776 /// Checks whether the given type matches the matcher rules. 777 /// Match may close open types and numbers in state. 778 /// @param state the MatchState 779 /// @param type the type to match 780 /// @returns the canonicalized type on match, otherwise nullptr 781 const sem::Type* Match(MatchState& state, 782 const sem::Type* type) const override; 783 /// @param state the MatchState 784 /// @return a string representation of the matcher. 785 std::string String(MatchState& state) const override; 786}; 787 788const sem::Type* TextureDepthCube::Match(MatchState& state, const sem::Type* ty) const { 789 if (!match_texture_depth_cube(ty)) { 790 return nullptr; 791 } 792 return build_texture_depth_cube(state); 793} 794 795std::string TextureDepthCube::String(MatchState&) const { 796 return "texture_depth_cube"; 797} 798 799/// TypeMatcher for 'type texture_depth_cube_array' 800/// @see src/intrinsics.def:92:6 801class TextureDepthCubeArray : public TypeMatcher { 802 public: 803 /// Checks whether the given type matches the matcher rules. 804 /// Match may close open types and numbers in state. 805 /// @param state the MatchState 806 /// @param type the type to match 807 /// @returns the canonicalized type on match, otherwise nullptr 808 const sem::Type* Match(MatchState& state, 809 const sem::Type* type) const override; 810 /// @param state the MatchState 811 /// @return a string representation of the matcher. 812 std::string String(MatchState& state) const override; 813}; 814 815const sem::Type* TextureDepthCubeArray::Match(MatchState& state, const sem::Type* ty) const { 816 if (!match_texture_depth_cube_array(ty)) { 817 return nullptr; 818 } 819 return build_texture_depth_cube_array(state); 820} 821 822std::string TextureDepthCubeArray::String(MatchState&) const { 823 return "texture_depth_cube_array"; 824} 825 826/// TypeMatcher for 'type texture_depth_multisampled_2d' 827/// @see src/intrinsics.def:93:6 828class TextureDepthMultisampled2D : public TypeMatcher { 829 public: 830 /// Checks whether the given type matches the matcher rules. 831 /// Match may close open types and numbers in state. 832 /// @param state the MatchState 833 /// @param type the type to match 834 /// @returns the canonicalized type on match, otherwise nullptr 835 const sem::Type* Match(MatchState& state, 836 const sem::Type* type) const override; 837 /// @param state the MatchState 838 /// @return a string representation of the matcher. 839 std::string String(MatchState& state) const override; 840}; 841 842const sem::Type* TextureDepthMultisampled2D::Match(MatchState& state, const sem::Type* ty) const { 843 if (!match_texture_depth_multisampled_2d(ty)) { 844 return nullptr; 845 } 846 return build_texture_depth_multisampled_2d(state); 847} 848 849std::string TextureDepthMultisampled2D::String(MatchState&) const { 850 return "texture_depth_multisampled_2d"; 851} 852 853/// TypeMatcher for 'type texture_storage_1d' 854/// @see src/intrinsics.def:94:6 855class TextureStorage1D : public TypeMatcher { 856 public: 857 /// Checks whether the given type matches the matcher rules. 858 /// Match may close open types and numbers in state. 859 /// @param state the MatchState 860 /// @param type the type to match 861 /// @returns the canonicalized type on match, otherwise nullptr 862 const sem::Type* Match(MatchState& state, 863 const sem::Type* type) const override; 864 /// @param state the MatchState 865 /// @return a string representation of the matcher. 866 std::string String(MatchState& state) const override; 867}; 868 869const sem::Type* TextureStorage1D::Match(MatchState& state, const sem::Type* ty) const { 870 Number F = Number::invalid; 871 Number A = Number::invalid; 872 if (!match_texture_storage_1d(ty, F, A)) { 873 return nullptr; 874 } 875 F = state.Num(F); 876 if (!F.IsValid()) { 877 return nullptr; 878 } 879 A = state.Num(A); 880 if (!A.IsValid()) { 881 return nullptr; 882 } 883 return build_texture_storage_1d(state, F, A); 884} 885 886std::string TextureStorage1D::String(MatchState& state) const { 887 const std::string F = state.NumName(); 888 const std::string A = state.NumName(); 889 return "texture_storage_1d<" + F + ", " + A + ">"; 890} 891 892/// TypeMatcher for 'type texture_storage_2d' 893/// @see src/intrinsics.def:95:6 894class TextureStorage2D : public TypeMatcher { 895 public: 896 /// Checks whether the given type matches the matcher rules. 897 /// Match may close open types and numbers in state. 898 /// @param state the MatchState 899 /// @param type the type to match 900 /// @returns the canonicalized type on match, otherwise nullptr 901 const sem::Type* Match(MatchState& state, 902 const sem::Type* type) const override; 903 /// @param state the MatchState 904 /// @return a string representation of the matcher. 905 std::string String(MatchState& state) const override; 906}; 907 908const sem::Type* TextureStorage2D::Match(MatchState& state, const sem::Type* ty) const { 909 Number F = Number::invalid; 910 Number A = Number::invalid; 911 if (!match_texture_storage_2d(ty, F, A)) { 912 return nullptr; 913 } 914 F = state.Num(F); 915 if (!F.IsValid()) { 916 return nullptr; 917 } 918 A = state.Num(A); 919 if (!A.IsValid()) { 920 return nullptr; 921 } 922 return build_texture_storage_2d(state, F, A); 923} 924 925std::string TextureStorage2D::String(MatchState& state) const { 926 const std::string F = state.NumName(); 927 const std::string A = state.NumName(); 928 return "texture_storage_2d<" + F + ", " + A + ">"; 929} 930 931/// TypeMatcher for 'type texture_storage_2d_array' 932/// @see src/intrinsics.def:96:6 933class TextureStorage2DArray : public TypeMatcher { 934 public: 935 /// Checks whether the given type matches the matcher rules. 936 /// Match may close open types and numbers in state. 937 /// @param state the MatchState 938 /// @param type the type to match 939 /// @returns the canonicalized type on match, otherwise nullptr 940 const sem::Type* Match(MatchState& state, 941 const sem::Type* type) const override; 942 /// @param state the MatchState 943 /// @return a string representation of the matcher. 944 std::string String(MatchState& state) const override; 945}; 946 947const sem::Type* TextureStorage2DArray::Match(MatchState& state, const sem::Type* ty) const { 948 Number F = Number::invalid; 949 Number A = Number::invalid; 950 if (!match_texture_storage_2d_array(ty, F, A)) { 951 return nullptr; 952 } 953 F = state.Num(F); 954 if (!F.IsValid()) { 955 return nullptr; 956 } 957 A = state.Num(A); 958 if (!A.IsValid()) { 959 return nullptr; 960 } 961 return build_texture_storage_2d_array(state, F, A); 962} 963 964std::string TextureStorage2DArray::String(MatchState& state) const { 965 const std::string F = state.NumName(); 966 const std::string A = state.NumName(); 967 return "texture_storage_2d_array<" + F + ", " + A + ">"; 968} 969 970/// TypeMatcher for 'type texture_storage_3d' 971/// @see src/intrinsics.def:97:6 972class TextureStorage3D : public TypeMatcher { 973 public: 974 /// Checks whether the given type matches the matcher rules. 975 /// Match may close open types and numbers in state. 976 /// @param state the MatchState 977 /// @param type the type to match 978 /// @returns the canonicalized type on match, otherwise nullptr 979 const sem::Type* Match(MatchState& state, 980 const sem::Type* type) const override; 981 /// @param state the MatchState 982 /// @return a string representation of the matcher. 983 std::string String(MatchState& state) const override; 984}; 985 986const sem::Type* TextureStorage3D::Match(MatchState& state, const sem::Type* ty) const { 987 Number F = Number::invalid; 988 Number A = Number::invalid; 989 if (!match_texture_storage_3d(ty, F, A)) { 990 return nullptr; 991 } 992 F = state.Num(F); 993 if (!F.IsValid()) { 994 return nullptr; 995 } 996 A = state.Num(A); 997 if (!A.IsValid()) { 998 return nullptr; 999 } 1000 return build_texture_storage_3d(state, F, A); 1001} 1002 1003std::string TextureStorage3D::String(MatchState& state) const { 1004 const std::string F = state.NumName(); 1005 const std::string A = state.NumName(); 1006 return "texture_storage_3d<" + F + ", " + A + ">"; 1007} 1008 1009/// TypeMatcher for 'type texture_external' 1010/// @see src/intrinsics.def:98:6 1011class TextureExternal : public TypeMatcher { 1012 public: 1013 /// Checks whether the given type matches the matcher rules. 1014 /// Match may close open types and numbers in state. 1015 /// @param state the MatchState 1016 /// @param type the type to match 1017 /// @returns the canonicalized type on match, otherwise nullptr 1018 const sem::Type* Match(MatchState& state, 1019 const sem::Type* type) const override; 1020 /// @param state the MatchState 1021 /// @return a string representation of the matcher. 1022 std::string String(MatchState& state) const override; 1023}; 1024 1025const sem::Type* TextureExternal::Match(MatchState& state, const sem::Type* ty) const { 1026 if (!match_texture_external(ty)) { 1027 return nullptr; 1028 } 1029 return build_texture_external(state); 1030} 1031 1032std::string TextureExternal::String(MatchState&) const { 1033 return "texture_external"; 1034} 1035 1036/// TypeMatcher for 'type __modf_result' 1037/// @see src/intrinsics.def:100:6 1038class ModfResult : public TypeMatcher { 1039 public: 1040 /// Checks whether the given type matches the matcher rules. 1041 /// Match may close open types and numbers in state. 1042 /// @param state the MatchState 1043 /// @param type the type to match 1044 /// @returns the canonicalized type on match, otherwise nullptr 1045 const sem::Type* Match(MatchState& state, 1046 const sem::Type* type) const override; 1047 /// @param state the MatchState 1048 /// @return a string representation of the matcher. 1049 std::string String(MatchState& state) const override; 1050}; 1051 1052const sem::Type* ModfResult::Match(MatchState& state, const sem::Type* ty) const { 1053 if (!match_modf_result(ty)) { 1054 return nullptr; 1055 } 1056 return build_modf_result(state); 1057} 1058 1059std::string ModfResult::String(MatchState&) const { 1060 return "__modf_result"; 1061} 1062 1063/// TypeMatcher for 'type __modf_result_vec' 1064/// @see src/intrinsics.def:101:42 1065class ModfResultVec : public TypeMatcher { 1066 public: 1067 /// Checks whether the given type matches the matcher rules. 1068 /// Match may close open types and numbers in state. 1069 /// @param state the MatchState 1070 /// @param type the type to match 1071 /// @returns the canonicalized type on match, otherwise nullptr 1072 const sem::Type* Match(MatchState& state, 1073 const sem::Type* type) const override; 1074 /// @param state the MatchState 1075 /// @return a string representation of the matcher. 1076 std::string String(MatchState& state) const override; 1077}; 1078 1079const sem::Type* ModfResultVec::Match(MatchState& state, const sem::Type* ty) const { 1080 Number N = Number::invalid; 1081 if (!match_modf_result_vec(ty, N)) { 1082 return nullptr; 1083 } 1084 N = state.Num(N); 1085 if (!N.IsValid()) { 1086 return nullptr; 1087 } 1088 return build_modf_result_vec(state, N); 1089} 1090 1091std::string ModfResultVec::String(MatchState& state) const { 1092 const std::string N = state.NumName(); 1093 std::stringstream ss; 1094 ss << "__modf_result_vec" << N; 1095 return ss.str(); 1096} 1097 1098/// TypeMatcher for 'type __frexp_result' 1099/// @see src/intrinsics.def:102:6 1100class FrexpResult : public TypeMatcher { 1101 public: 1102 /// Checks whether the given type matches the matcher rules. 1103 /// Match may close open types and numbers in state. 1104 /// @param state the MatchState 1105 /// @param type the type to match 1106 /// @returns the canonicalized type on match, otherwise nullptr 1107 const sem::Type* Match(MatchState& state, 1108 const sem::Type* type) const override; 1109 /// @param state the MatchState 1110 /// @return a string representation of the matcher. 1111 std::string String(MatchState& state) const override; 1112}; 1113 1114const sem::Type* FrexpResult::Match(MatchState& state, const sem::Type* ty) const { 1115 if (!match_frexp_result(ty)) { 1116 return nullptr; 1117 } 1118 return build_frexp_result(state); 1119} 1120 1121std::string FrexpResult::String(MatchState&) const { 1122 return "__frexp_result"; 1123} 1124 1125/// TypeMatcher for 'type __frexp_result_vec' 1126/// @see src/intrinsics.def:103:43 1127class FrexpResultVec : public TypeMatcher { 1128 public: 1129 /// Checks whether the given type matches the matcher rules. 1130 /// Match may close open types and numbers in state. 1131 /// @param state the MatchState 1132 /// @param type the type to match 1133 /// @returns the canonicalized type on match, otherwise nullptr 1134 const sem::Type* Match(MatchState& state, 1135 const sem::Type* type) const override; 1136 /// @param state the MatchState 1137 /// @return a string representation of the matcher. 1138 std::string String(MatchState& state) const override; 1139}; 1140 1141const sem::Type* FrexpResultVec::Match(MatchState& state, const sem::Type* ty) const { 1142 Number N = Number::invalid; 1143 if (!match_frexp_result_vec(ty, N)) { 1144 return nullptr; 1145 } 1146 N = state.Num(N); 1147 if (!N.IsValid()) { 1148 return nullptr; 1149 } 1150 return build_frexp_result_vec(state, N); 1151} 1152 1153std::string FrexpResultVec::String(MatchState& state) const { 1154 const std::string N = state.NumName(); 1155 std::stringstream ss; 1156 ss << "__frexp_result_vec" << N; 1157 return ss.str(); 1158} 1159 1160/// TypeMatcher for 'match fiu32' 1161/// @see src/intrinsics.def:111:7 1162class Fiu32 : public TypeMatcher { 1163 public: 1164 /// Checks whether the given type matches the matcher rules, and returns the 1165 /// expected, canonicalized type on success. 1166 /// Match may close open types and numbers in state. 1167 /// @param state the MatchState 1168 /// @param type the type to match 1169 /// @returns the canonicalized type on match, otherwise nullptr 1170 const sem::Type* Match(MatchState& state, 1171 const sem::Type* type) const override; 1172 /// @param state the MatchState 1173 /// @return a string representation of the matcher. 1174 std::string String(MatchState& state) const override; 1175}; 1176 1177const sem::Type* Fiu32::Match(MatchState& state, const sem::Type* ty) const { 1178 if (match_f32(ty)) { 1179 return build_f32(state); 1180 } 1181 if (match_i32(ty)) { 1182 return build_i32(state); 1183 } 1184 if (match_u32(ty)) { 1185 return build_u32(state); 1186 } 1187 return nullptr; 1188} 1189 1190std::string Fiu32::String(MatchState&) const { 1191 return "f32, i32 or u32"; 1192} 1193 1194/// TypeMatcher for 'match iu32' 1195/// @see src/intrinsics.def:112:7 1196class Iu32 : public TypeMatcher { 1197 public: 1198 /// Checks whether the given type matches the matcher rules, and returns the 1199 /// expected, canonicalized type on success. 1200 /// Match may close open types and numbers in state. 1201 /// @param state the MatchState 1202 /// @param type the type to match 1203 /// @returns the canonicalized type on match, otherwise nullptr 1204 const sem::Type* Match(MatchState& state, 1205 const sem::Type* type) const override; 1206 /// @param state the MatchState 1207 /// @return a string representation of the matcher. 1208 std::string String(MatchState& state) const override; 1209}; 1210 1211const sem::Type* Iu32::Match(MatchState& state, const sem::Type* ty) const { 1212 if (match_i32(ty)) { 1213 return build_i32(state); 1214 } 1215 if (match_u32(ty)) { 1216 return build_u32(state); 1217 } 1218 return nullptr; 1219} 1220 1221std::string Iu32::String(MatchState&) const { 1222 return "i32 or u32"; 1223} 1224 1225/// TypeMatcher for 'match scalar' 1226/// @see src/intrinsics.def:113:7 1227class Scalar : public TypeMatcher { 1228 public: 1229 /// Checks whether the given type matches the matcher rules, and returns the 1230 /// expected, canonicalized type on success. 1231 /// Match may close open types and numbers in state. 1232 /// @param state the MatchState 1233 /// @param type the type to match 1234 /// @returns the canonicalized type on match, otherwise nullptr 1235 const sem::Type* Match(MatchState& state, 1236 const sem::Type* type) const override; 1237 /// @param state the MatchState 1238 /// @return a string representation of the matcher. 1239 std::string String(MatchState& state) const override; 1240}; 1241 1242const sem::Type* Scalar::Match(MatchState& state, const sem::Type* ty) const { 1243 if (match_f32(ty)) { 1244 return build_f32(state); 1245 } 1246 if (match_i32(ty)) { 1247 return build_i32(state); 1248 } 1249 if (match_u32(ty)) { 1250 return build_u32(state); 1251 } 1252 if (match_bool(ty)) { 1253 return build_bool(state); 1254 } 1255 return nullptr; 1256} 1257 1258std::string Scalar::String(MatchState&) const { 1259 return "f32, i32, u32 or bool"; 1260} 1261 1262/// EnumMatcher for 'match f32_texel_format' 1263/// @see src/intrinsics.def:124:7 1264class F32TexelFormat : public NumberMatcher { 1265 public: 1266 /// Checks whether the given number matches the enum matcher rules. 1267 /// Match may close open types and numbers in state. 1268 /// @param state the MatchState 1269 /// @param number the enum value as a Number 1270 /// @return true if the enum value matches the set 1271 Number Match(MatchState& state, Number number) const override; 1272 /// @param state the MatchState 1273 /// @return a string representation of the matcher. 1274 std::string String(MatchState& state) const override; 1275}; 1276 1277Number F32TexelFormat::Match(MatchState&, Number number) const { 1278 switch (static_cast<TexelFormat>(number.Value())) { 1279 case TexelFormat::kRgba8Unorm: 1280 case TexelFormat::kRgba8Snorm: 1281 case TexelFormat::kRgba16Float: 1282 case TexelFormat::kR32Float: 1283 case TexelFormat::kRg32Float: 1284 case TexelFormat::kRgba32Float: 1285 return number; 1286 default: 1287 return Number::invalid; 1288 } 1289} 1290 1291std::string F32TexelFormat::String(MatchState&) const { 1292 return "rgba8unorm, rgba8snorm, rgba16float, r32float, rg32float or rgba32float"; 1293} 1294 1295/// EnumMatcher for 'match i32_texel_format' 1296/// @see src/intrinsics.def:126:7 1297class I32TexelFormat : public NumberMatcher { 1298 public: 1299 /// Checks whether the given number matches the enum matcher rules. 1300 /// Match may close open types and numbers in state. 1301 /// @param state the MatchState 1302 /// @param number the enum value as a Number 1303 /// @return true if the enum value matches the set 1304 Number Match(MatchState& state, Number number) const override; 1305 /// @param state the MatchState 1306 /// @return a string representation of the matcher. 1307 std::string String(MatchState& state) const override; 1308}; 1309 1310Number I32TexelFormat::Match(MatchState&, Number number) const { 1311 switch (static_cast<TexelFormat>(number.Value())) { 1312 case TexelFormat::kRgba8Sint: 1313 case TexelFormat::kRgba16Sint: 1314 case TexelFormat::kR32Sint: 1315 case TexelFormat::kRg32Sint: 1316 case TexelFormat::kRgba32Sint: 1317 return number; 1318 default: 1319 return Number::invalid; 1320 } 1321} 1322 1323std::string I32TexelFormat::String(MatchState&) const { 1324 return "rgba8sint, rgba16sint, r32sint, rg32sint or rgba32sint"; 1325} 1326 1327/// EnumMatcher for 'match u32_texel_format' 1328/// @see src/intrinsics.def:128:7 1329class U32TexelFormat : public NumberMatcher { 1330 public: 1331 /// Checks whether the given number matches the enum matcher rules. 1332 /// Match may close open types and numbers in state. 1333 /// @param state the MatchState 1334 /// @param number the enum value as a Number 1335 /// @return true if the enum value matches the set 1336 Number Match(MatchState& state, Number number) const override; 1337 /// @param state the MatchState 1338 /// @return a string representation of the matcher. 1339 std::string String(MatchState& state) const override; 1340}; 1341 1342Number U32TexelFormat::Match(MatchState&, Number number) const { 1343 switch (static_cast<TexelFormat>(number.Value())) { 1344 case TexelFormat::kRgba8Uint: 1345 case TexelFormat::kRgba16Uint: 1346 case TexelFormat::kR32Uint: 1347 case TexelFormat::kRg32Uint: 1348 case TexelFormat::kRgba32Uint: 1349 return number; 1350 default: 1351 return Number::invalid; 1352 } 1353} 1354 1355std::string U32TexelFormat::String(MatchState&) const { 1356 return "rgba8uint, rgba16uint, r32uint, rg32uint or rgba32uint"; 1357} 1358 1359/// EnumMatcher for 'match write_only' 1360/// @see src/intrinsics.def:131:7 1361class WriteOnly : public NumberMatcher { 1362 public: 1363 /// Checks whether the given number matches the enum matcher rules. 1364 /// Match may close open types and numbers in state. 1365 /// @param state the MatchState 1366 /// @param number the enum value as a Number 1367 /// @return true if the enum value matches the set 1368 Number Match(MatchState& state, Number number) const override; 1369 /// @param state the MatchState 1370 /// @return a string representation of the matcher. 1371 std::string String(MatchState& state) const override; 1372}; 1373 1374Number WriteOnly::Match(MatchState&, Number number) const { 1375 if (number.IsAny() || number.Value() == static_cast<uint32_t>(Access::kWrite)) { 1376 return Number(static_cast<uint32_t>(Access::kWrite)); 1377 } 1378 return Number::invalid; 1379} 1380 1381std::string WriteOnly::String(MatchState&) const { 1382 return "write"; 1383} 1384 1385/// EnumMatcher for 'match function_private_workgroup' 1386/// @see src/intrinsics.def:133:7 1387class FunctionPrivateWorkgroup : public NumberMatcher { 1388 public: 1389 /// Checks whether the given number matches the enum matcher rules. 1390 /// Match may close open types and numbers in state. 1391 /// @param state the MatchState 1392 /// @param number the enum value as a Number 1393 /// @return true if the enum value matches the set 1394 Number Match(MatchState& state, Number number) const override; 1395 /// @param state the MatchState 1396 /// @return a string representation of the matcher. 1397 std::string String(MatchState& state) const override; 1398}; 1399 1400Number FunctionPrivateWorkgroup::Match(MatchState&, Number number) const { 1401 switch (static_cast<StorageClass>(number.Value())) { 1402 case StorageClass::kFunction: 1403 case StorageClass::kPrivate: 1404 case StorageClass::kWorkgroup: 1405 return number; 1406 default: 1407 return Number::invalid; 1408 } 1409} 1410 1411std::string FunctionPrivateWorkgroup::String(MatchState&) const { 1412 return "function, private or workgroup"; 1413} 1414 1415/// EnumMatcher for 'match workgroup_or_storage' 1416/// @see src/intrinsics.def:134:7 1417class WorkgroupOrStorage : public NumberMatcher { 1418 public: 1419 /// Checks whether the given number matches the enum matcher rules. 1420 /// Match may close open types and numbers in state. 1421 /// @param state the MatchState 1422 /// @param number the enum value as a Number 1423 /// @return true if the enum value matches the set 1424 Number Match(MatchState& state, Number number) const override; 1425 /// @param state the MatchState 1426 /// @return a string representation of the matcher. 1427 std::string String(MatchState& state) const override; 1428}; 1429 1430Number WorkgroupOrStorage::Match(MatchState&, Number number) const { 1431 switch (static_cast<StorageClass>(number.Value())) { 1432 case StorageClass::kWorkgroup: 1433 case StorageClass::kStorage: 1434 return number; 1435 default: 1436 return Number::invalid; 1437 } 1438} 1439 1440std::string WorkgroupOrStorage::String(MatchState&) const { 1441 return "workgroup or storage"; 1442} 1443 1444/// EnumMatcher for 'match storage' 1445class Storage : public NumberMatcher { 1446 public: 1447 /// Checks whether the given number matches the enum matcher rules. 1448 /// Match may close open types and numbers in state. 1449 /// @param state the MatchState 1450 /// @param number the enum value as a Number 1451 /// @return true if the enum value matches the set 1452 Number Match(MatchState& state, Number number) const override; 1453 /// @param state the MatchState 1454 /// @return a string representation of the matcher. 1455 std::string String(MatchState& state) const override; 1456}; 1457 1458Number Storage::Match(MatchState&, Number number) const { 1459 if (number.IsAny() || number.Value() == static_cast<uint32_t>(StorageClass::kStorage)) { 1460 return Number(static_cast<uint32_t>(StorageClass::kStorage)); 1461 } 1462 return Number::invalid; 1463} 1464 1465std::string Storage::String(MatchState&) const { 1466 return "storage"; 1467} 1468 1469/// EnumMatcher for 'match write' 1470class Write : public NumberMatcher { 1471 public: 1472 /// Checks whether the given number matches the enum matcher rules. 1473 /// Match may close open types and numbers in state. 1474 /// @param state the MatchState 1475 /// @param number the enum value as a Number 1476 /// @return true if the enum value matches the set 1477 Number Match(MatchState& state, Number number) const override; 1478 /// @param state the MatchState 1479 /// @return a string representation of the matcher. 1480 std::string String(MatchState& state) const override; 1481}; 1482 1483Number Write::Match(MatchState&, Number number) const { 1484 if (number.IsAny() || number.Value() == static_cast<uint32_t>(Access::kWrite)) { 1485 return Number(static_cast<uint32_t>(Access::kWrite)); 1486 } 1487 return Number::invalid; 1488} 1489 1490std::string Write::String(MatchState&) const { 1491 return "write"; 1492} 1493 1494/// EnumMatcher for 'match read_write' 1495class ReadWrite : public NumberMatcher { 1496 public: 1497 /// Checks whether the given number matches the enum matcher rules. 1498 /// Match may close open types and numbers in state. 1499 /// @param state the MatchState 1500 /// @param number the enum value as a Number 1501 /// @return true if the enum value matches the set 1502 Number Match(MatchState& state, Number number) const override; 1503 /// @param state the MatchState 1504 /// @return a string representation of the matcher. 1505 std::string String(MatchState& state) const override; 1506}; 1507 1508Number ReadWrite::Match(MatchState&, Number number) const { 1509 if (number.IsAny() || number.Value() == static_cast<uint32_t>(Access::kReadWrite)) { 1510 return Number(static_cast<uint32_t>(Access::kReadWrite)); 1511 } 1512 return Number::invalid; 1513} 1514 1515std::string ReadWrite::String(MatchState&) const { 1516 return "read_write"; 1517} 1518 1519/// Matchers holds type and number matchers 1520class Matchers { 1521 private: 1522 OpenTypeMatcher open_type_0_{0}; 1523 OpenNumberMatcher open_number_0_{0}; 1524 OpenNumberMatcher open_number_1_{1}; 1525 Bool Bool_; 1526 F32 F32_; 1527 I32 I32_; 1528 U32 U32_; 1529 Vec2 Vec2_; 1530 Vec3 Vec3_; 1531 Vec4 Vec4_; 1532 Vec Vec_; 1533 Mat Mat_; 1534 Ptr Ptr_; 1535 Atomic Atomic_; 1536 Array Array_; 1537 Sampler Sampler_; 1538 SamplerComparison SamplerComparison_; 1539 Texture1D Texture1D_; 1540 Texture2D Texture2D_; 1541 Texture2DArray Texture2DArray_; 1542 Texture3D Texture3D_; 1543 TextureCube TextureCube_; 1544 TextureCubeArray TextureCubeArray_; 1545 TextureMultisampled2D TextureMultisampled2D_; 1546 TextureDepth2D TextureDepth2D_; 1547 TextureDepth2DArray TextureDepth2DArray_; 1548 TextureDepthCube TextureDepthCube_; 1549 TextureDepthCubeArray TextureDepthCubeArray_; 1550 TextureDepthMultisampled2D TextureDepthMultisampled2D_; 1551 TextureStorage1D TextureStorage1D_; 1552 TextureStorage2D TextureStorage2D_; 1553 TextureStorage2DArray TextureStorage2DArray_; 1554 TextureStorage3D TextureStorage3D_; 1555 TextureExternal TextureExternal_; 1556 ModfResult ModfResult_; 1557 ModfResultVec ModfResultVec_; 1558 FrexpResult FrexpResult_; 1559 FrexpResultVec FrexpResultVec_; 1560 Fiu32 Fiu32_; 1561 Iu32 Iu32_; 1562 Scalar Scalar_; 1563 F32TexelFormat F32TexelFormat_; 1564 I32TexelFormat I32TexelFormat_; 1565 U32TexelFormat U32TexelFormat_; 1566 WriteOnly WriteOnly_; 1567 FunctionPrivateWorkgroup FunctionPrivateWorkgroup_; 1568 WorkgroupOrStorage WorkgroupOrStorage_; 1569 Storage Storage_; 1570 Write Write_; 1571 ReadWrite ReadWrite_; 1572 1573 public: 1574 /// Constructor 1575 Matchers(); 1576 /// Destructor 1577 ~Matchers(); 1578 1579 /// The open-types, types, and type matchers 1580 TypeMatcher const* const type[39] = { 1581 /* [0] */ &open_type_0_, 1582 /* [1] */ &Bool_, 1583 /* [2] */ &F32_, 1584 /* [3] */ &I32_, 1585 /* [4] */ &U32_, 1586 /* [5] */ &Vec2_, 1587 /* [6] */ &Vec3_, 1588 /* [7] */ &Vec4_, 1589 /* [8] */ &Vec_, 1590 /* [9] */ &Mat_, 1591 /* [10] */ &Ptr_, 1592 /* [11] */ &Atomic_, 1593 /* [12] */ &Array_, 1594 /* [13] */ &Sampler_, 1595 /* [14] */ &SamplerComparison_, 1596 /* [15] */ &Texture1D_, 1597 /* [16] */ &Texture2D_, 1598 /* [17] */ &Texture2DArray_, 1599 /* [18] */ &Texture3D_, 1600 /* [19] */ &TextureCube_, 1601 /* [20] */ &TextureCubeArray_, 1602 /* [21] */ &TextureMultisampled2D_, 1603 /* [22] */ &TextureDepth2D_, 1604 /* [23] */ &TextureDepth2DArray_, 1605 /* [24] */ &TextureDepthCube_, 1606 /* [25] */ &TextureDepthCubeArray_, 1607 /* [26] */ &TextureDepthMultisampled2D_, 1608 /* [27] */ &TextureStorage1D_, 1609 /* [28] */ &TextureStorage2D_, 1610 /* [29] */ &TextureStorage2DArray_, 1611 /* [30] */ &TextureStorage3D_, 1612 /* [31] */ &TextureExternal_, 1613 /* [32] */ &ModfResult_, 1614 /* [33] */ &ModfResultVec_, 1615 /* [34] */ &FrexpResult_, 1616 /* [35] */ &FrexpResultVec_, 1617 /* [36] */ &Fiu32_, 1618 /* [37] */ &Iu32_, 1619 /* [38] */ &Scalar_, 1620 }; 1621 1622 /// The open-numbers, and number matchers 1623 NumberMatcher const* const number[11] = { 1624 /* [0] */ &open_number_0_, 1625 /* [1] */ &open_number_1_, 1626 /* [2] */ &F32TexelFormat_, 1627 /* [3] */ &I32TexelFormat_, 1628 /* [4] */ &U32TexelFormat_, 1629 /* [5] */ &WriteOnly_, 1630 /* [6] */ &FunctionPrivateWorkgroup_, 1631 /* [7] */ &WorkgroupOrStorage_, 1632 /* [8] */ &Storage_, 1633 /* [9] */ &Write_, 1634 /* [10] */ &ReadWrite_, 1635 }; 1636}; 1637 1638Matchers::Matchers() = default; 1639Matchers::~Matchers() = default; 1640 1641constexpr MatcherIndex kMatcherIndices[] = { 1642 /* [0] */ 10, 1643 /* [1] */ 0, 1644 /* [2] */ 11, 1645 /* [3] */ 0, 1646 /* [4] */ 10, 1647 /* [5] */ 8, 1648 /* [6] */ 12, 1649 /* [7] */ 0, 1650 /* [8] */ 0, 1651 /* [9] */ 9, 1652 /* [10] */ 1, 1653 /* [11] */ 0, 1654 /* [12] */ 2, 1655 /* [13] */ 9, 1656 /* [14] */ 0, 1657 /* [15] */ 1, 1658 /* [16] */ 2, 1659 /* [17] */ 9, 1660 /* [18] */ 0, 1661 /* [19] */ 0, 1662 /* [20] */ 2, 1663 /* [21] */ 8, 1664 /* [22] */ 0, 1665 /* [23] */ 2, 1666 /* [24] */ 8, 1667 /* [25] */ 0, 1668 /* [26] */ 1, 1669 /* [27] */ 29, 1670 /* [28] */ 0, 1671 /* [29] */ 1, 1672 /* [30] */ 8, 1673 /* [31] */ 0, 1674 /* [32] */ 0, 1675 /* [33] */ 30, 1676 /* [34] */ 0, 1677 /* [35] */ 1, 1678 /* [36] */ 28, 1679 /* [37] */ 0, 1680 /* [38] */ 1, 1681 /* [39] */ 27, 1682 /* [40] */ 0, 1683 /* [41] */ 1, 1684 /* [42] */ 30, 1685 /* [43] */ 4, 1686 /* [44] */ 9, 1687 /* [45] */ 29, 1688 /* [46] */ 4, 1689 /* [47] */ 9, 1690 /* [48] */ 28, 1691 /* [49] */ 4, 1692 /* [50] */ 9, 1693 /* [51] */ 27, 1694 /* [52] */ 4, 1695 /* [53] */ 9, 1696 /* [54] */ 30, 1697 /* [55] */ 3, 1698 /* [56] */ 9, 1699 /* [57] */ 29, 1700 /* [58] */ 3, 1701 /* [59] */ 9, 1702 /* [60] */ 28, 1703 /* [61] */ 3, 1704 /* [62] */ 9, 1705 /* [63] */ 27, 1706 /* [64] */ 3, 1707 /* [65] */ 9, 1708 /* [66] */ 30, 1709 /* [67] */ 2, 1710 /* [68] */ 9, 1711 /* [69] */ 29, 1712 /* [70] */ 2, 1713 /* [71] */ 9, 1714 /* [72] */ 28, 1715 /* [73] */ 2, 1716 /* [74] */ 9, 1717 /* [75] */ 27, 1718 /* [76] */ 2, 1719 /* [77] */ 9, 1720 /* [78] */ 8, 1721 /* [79] */ 0, 1722 /* [80] */ 3, 1723 /* [81] */ 15, 1724 /* [82] */ 0, 1725 /* [83] */ 6, 1726 /* [84] */ 2, 1727 /* [85] */ 18, 1728 /* [86] */ 2, 1729 /* [87] */ 7, 1730 /* [88] */ 2, 1731 /* [89] */ 5, 1732 /* [90] */ 3, 1733 /* [91] */ 5, 1734 /* [92] */ 2, 1735 /* [93] */ 17, 1736 /* [94] */ 2, 1737 /* [95] */ 6, 1738 /* [96] */ 3, 1739 /* [97] */ 19, 1740 /* [98] */ 2, 1741 /* [99] */ 16, 1742 /* [100] */ 2, 1743 /* [101] */ 20, 1744 /* [102] */ 2, 1745 /* [103] */ 33, 1746 /* [104] */ 0, 1747 /* [105] */ 5, 1748 /* [106] */ 0, 1749 /* [107] */ 35, 1750 /* [108] */ 0, 1751 /* [109] */ 17, 1752 /* [110] */ 0, 1753 /* [111] */ 7, 1754 /* [112] */ 3, 1755 /* [113] */ 7, 1756 /* [114] */ 4, 1757 /* [115] */ 7, 1758 /* [116] */ 0, 1759 /* [117] */ 16, 1760 /* [118] */ 0, 1761 /* [119] */ 18, 1762 /* [120] */ 0, 1763 /* [121] */ 21, 1764 /* [122] */ 0, 1765 /* [123] */ 19, 1766 /* [124] */ 0, 1767 /* [125] */ 20, 1768 /* [126] */ 0, 1769 /* [127] */ 15, 1770 /* [128] */ 2, 1771 /* [129] */ 22, 1772 /* [130] */ 23, 1773 /* [131] */ 24, 1774 /* [132] */ 25, 1775 /* [133] */ 26, 1776 /* [134] */ 13, 1777 /* [135] */ 14, 1778 /* [136] */ 31, 1779 /* [137] */ 32, 1780 /* [138] */ 34, 1781}; 1782 1783// Assert that the MatcherIndex is big enough to index all the matchers, plus 1784// kNoMatcher. 1785static_assert(static_cast<int>(sizeof(kMatcherIndices) / sizeof(kMatcherIndices[0])) < 1786 static_cast<int>(std::numeric_limits<MatcherIndex>::max() - 1), 1787 "MatcherIndex is not large enough to index kMatcherIndices"); 1788 1789constexpr ParameterInfo kParameters[] = { 1790 { 1791 /* [0] */ 1792 /* usage */ ParameterUsage::kTexture, 1793 /* matcher indices */ &kMatcherIndices[93], 1794 }, 1795 { 1796 /* [1] */ 1797 /* usage */ ParameterUsage::kSampler, 1798 /* matcher indices */ &kMatcherIndices[134], 1799 }, 1800 { 1801 /* [2] */ 1802 /* usage */ ParameterUsage::kCoords, 1803 /* matcher indices */ &kMatcherIndices[91], 1804 }, 1805 { 1806 /* [3] */ 1807 /* usage */ ParameterUsage::kArrayIndex, 1808 /* matcher indices */ &kMatcherIndices[55], 1809 }, 1810 { 1811 /* [4] */ 1812 /* usage */ ParameterUsage::kDdx, 1813 /* matcher indices */ &kMatcherIndices[91], 1814 }, 1815 { 1816 /* [5] */ 1817 /* usage */ ParameterUsage::kDdy, 1818 /* matcher indices */ &kMatcherIndices[91], 1819 }, 1820 { 1821 /* [6] */ 1822 /* usage */ ParameterUsage::kOffset, 1823 /* matcher indices */ &kMatcherIndices[89], 1824 }, 1825 { 1826 /* [7] */ 1827 /* usage */ ParameterUsage::kTexture, 1828 /* matcher indices */ &kMatcherIndices[99], 1829 }, 1830 { 1831 /* [8] */ 1832 /* usage */ ParameterUsage::kSampler, 1833 /* matcher indices */ &kMatcherIndices[134], 1834 }, 1835 { 1836 /* [9] */ 1837 /* usage */ ParameterUsage::kCoords, 1838 /* matcher indices */ &kMatcherIndices[91], 1839 }, 1840 { 1841 /* [10] */ 1842 /* usage */ ParameterUsage::kDdx, 1843 /* matcher indices */ &kMatcherIndices[91], 1844 }, 1845 { 1846 /* [11] */ 1847 /* usage */ ParameterUsage::kDdy, 1848 /* matcher indices */ &kMatcherIndices[91], 1849 }, 1850 { 1851 /* [12] */ 1852 /* usage */ ParameterUsage::kOffset, 1853 /* matcher indices */ &kMatcherIndices[89], 1854 }, 1855 { 1856 /* [13] */ 1857 /* usage */ ParameterUsage::kTexture, 1858 /* matcher indices */ &kMatcherIndices[93], 1859 }, 1860 { 1861 /* [14] */ 1862 /* usage */ ParameterUsage::kSampler, 1863 /* matcher indices */ &kMatcherIndices[134], 1864 }, 1865 { 1866 /* [15] */ 1867 /* usage */ ParameterUsage::kCoords, 1868 /* matcher indices */ &kMatcherIndices[91], 1869 }, 1870 { 1871 /* [16] */ 1872 /* usage */ ParameterUsage::kArrayIndex, 1873 /* matcher indices */ &kMatcherIndices[55], 1874 }, 1875 { 1876 /* [17] */ 1877 /* usage */ ParameterUsage::kBias, 1878 /* matcher indices */ &kMatcherIndices[12], 1879 }, 1880 { 1881 /* [18] */ 1882 /* usage */ ParameterUsage::kOffset, 1883 /* matcher indices */ &kMatcherIndices[89], 1884 }, 1885 { 1886 /* [19] */ 1887 /* usage */ ParameterUsage::kTexture, 1888 /* matcher indices */ &kMatcherIndices[93], 1889 }, 1890 { 1891 /* [20] */ 1892 /* usage */ ParameterUsage::kSampler, 1893 /* matcher indices */ &kMatcherIndices[134], 1894 }, 1895 { 1896 /* [21] */ 1897 /* usage */ ParameterUsage::kCoords, 1898 /* matcher indices */ &kMatcherIndices[91], 1899 }, 1900 { 1901 /* [22] */ 1902 /* usage */ ParameterUsage::kArrayIndex, 1903 /* matcher indices */ &kMatcherIndices[55], 1904 }, 1905 { 1906 /* [23] */ 1907 /* usage */ ParameterUsage::kLevel, 1908 /* matcher indices */ &kMatcherIndices[12], 1909 }, 1910 { 1911 /* [24] */ 1912 /* usage */ ParameterUsage::kOffset, 1913 /* matcher indices */ &kMatcherIndices[89], 1914 }, 1915 { 1916 /* [25] */ 1917 /* usage */ ParameterUsage::kTexture, 1918 /* matcher indices */ &kMatcherIndices[101], 1919 }, 1920 { 1921 /* [26] */ 1922 /* usage */ ParameterUsage::kSampler, 1923 /* matcher indices */ &kMatcherIndices[134], 1924 }, 1925 { 1926 /* [27] */ 1927 /* usage */ ParameterUsage::kCoords, 1928 /* matcher indices */ &kMatcherIndices[83], 1929 }, 1930 { 1931 /* [28] */ 1932 /* usage */ ParameterUsage::kArrayIndex, 1933 /* matcher indices */ &kMatcherIndices[55], 1934 }, 1935 { 1936 /* [29] */ 1937 /* usage */ ParameterUsage::kDdx, 1938 /* matcher indices */ &kMatcherIndices[83], 1939 }, 1940 { 1941 /* [30] */ 1942 /* usage */ ParameterUsage::kDdy, 1943 /* matcher indices */ &kMatcherIndices[83], 1944 }, 1945 { 1946 /* [31] */ 1947 /* usage */ ParameterUsage::kComponent, 1948 /* matcher indices */ &kMatcherIndices[55], 1949 }, 1950 { 1951 /* [32] */ 1952 /* usage */ ParameterUsage::kTexture, 1953 /* matcher indices */ &kMatcherIndices[109], 1954 }, 1955 { 1956 /* [33] */ 1957 /* usage */ ParameterUsage::kSampler, 1958 /* matcher indices */ &kMatcherIndices[134], 1959 }, 1960 { 1961 /* [34] */ 1962 /* usage */ ParameterUsage::kCoords, 1963 /* matcher indices */ &kMatcherIndices[91], 1964 }, 1965 { 1966 /* [35] */ 1967 /* usage */ ParameterUsage::kArrayIndex, 1968 /* matcher indices */ &kMatcherIndices[55], 1969 }, 1970 { 1971 /* [36] */ 1972 /* usage */ ParameterUsage::kOffset, 1973 /* matcher indices */ &kMatcherIndices[89], 1974 }, 1975 { 1976 /* [37] */ 1977 /* usage */ ParameterUsage::kTexture, 1978 /* matcher indices */ &kMatcherIndices[85], 1979 }, 1980 { 1981 /* [38] */ 1982 /* usage */ ParameterUsage::kSampler, 1983 /* matcher indices */ &kMatcherIndices[134], 1984 }, 1985 { 1986 /* [39] */ 1987 /* usage */ ParameterUsage::kCoords, 1988 /* matcher indices */ &kMatcherIndices[83], 1989 }, 1990 { 1991 /* [40] */ 1992 /* usage */ ParameterUsage::kDdx, 1993 /* matcher indices */ &kMatcherIndices[83], 1994 }, 1995 { 1996 /* [41] */ 1997 /* usage */ ParameterUsage::kDdy, 1998 /* matcher indices */ &kMatcherIndices[83], 1999 }, 2000 { 2001 /* [42] */ 2002 /* usage */ ParameterUsage::kOffset, 2003 /* matcher indices */ &kMatcherIndices[95], 2004 }, 2005 { 2006 /* [43] */ 2007 /* usage */ ParameterUsage::kTexture, 2008 /* matcher indices */ &kMatcherIndices[130], 2009 }, 2010 { 2011 /* [44] */ 2012 /* usage */ ParameterUsage::kSampler, 2013 /* matcher indices */ &kMatcherIndices[134], 2014 }, 2015 { 2016 /* [45] */ 2017 /* usage */ ParameterUsage::kCoords, 2018 /* matcher indices */ &kMatcherIndices[91], 2019 }, 2020 { 2021 /* [46] */ 2022 /* usage */ ParameterUsage::kArrayIndex, 2023 /* matcher indices */ &kMatcherIndices[55], 2024 }, 2025 { 2026 /* [47] */ 2027 /* usage */ ParameterUsage::kLevel, 2028 /* matcher indices */ &kMatcherIndices[55], 2029 }, 2030 { 2031 /* [48] */ 2032 /* usage */ ParameterUsage::kOffset, 2033 /* matcher indices */ &kMatcherIndices[89], 2034 }, 2035 { 2036 /* [49] */ 2037 /* usage */ ParameterUsage::kTexture, 2038 /* matcher indices */ &kMatcherIndices[130], 2039 }, 2040 { 2041 /* [50] */ 2042 /* usage */ ParameterUsage::kSampler, 2043 /* matcher indices */ &kMatcherIndices[135], 2044 }, 2045 { 2046 /* [51] */ 2047 /* usage */ ParameterUsage::kCoords, 2048 /* matcher indices */ &kMatcherIndices[91], 2049 }, 2050 { 2051 /* [52] */ 2052 /* usage */ ParameterUsage::kArrayIndex, 2053 /* matcher indices */ &kMatcherIndices[55], 2054 }, 2055 { 2056 /* [53] */ 2057 /* usage */ ParameterUsage::kDepthRef, 2058 /* matcher indices */ &kMatcherIndices[12], 2059 }, 2060 { 2061 /* [54] */ 2062 /* usage */ ParameterUsage::kOffset, 2063 /* matcher indices */ &kMatcherIndices[89], 2064 }, 2065 { 2066 /* [55] */ 2067 /* usage */ ParameterUsage::kTexture, 2068 /* matcher indices */ &kMatcherIndices[130], 2069 }, 2070 { 2071 /* [56] */ 2072 /* usage */ ParameterUsage::kSampler, 2073 /* matcher indices */ &kMatcherIndices[135], 2074 }, 2075 { 2076 /* [57] */ 2077 /* usage */ ParameterUsage::kCoords, 2078 /* matcher indices */ &kMatcherIndices[91], 2079 }, 2080 { 2081 /* [58] */ 2082 /* usage */ ParameterUsage::kArrayIndex, 2083 /* matcher indices */ &kMatcherIndices[55], 2084 }, 2085 { 2086 /* [59] */ 2087 /* usage */ ParameterUsage::kDepthRef, 2088 /* matcher indices */ &kMatcherIndices[12], 2089 }, 2090 { 2091 /* [60] */ 2092 /* usage */ ParameterUsage::kOffset, 2093 /* matcher indices */ &kMatcherIndices[89], 2094 }, 2095 { 2096 /* [61] */ 2097 /* usage */ ParameterUsage::kTexture, 2098 /* matcher indices */ &kMatcherIndices[130], 2099 }, 2100 { 2101 /* [62] */ 2102 /* usage */ ParameterUsage::kSampler, 2103 /* matcher indices */ &kMatcherIndices[135], 2104 }, 2105 { 2106 /* [63] */ 2107 /* usage */ ParameterUsage::kCoords, 2108 /* matcher indices */ &kMatcherIndices[91], 2109 }, 2110 { 2111 /* [64] */ 2112 /* usage */ ParameterUsage::kArrayIndex, 2113 /* matcher indices */ &kMatcherIndices[55], 2114 }, 2115 { 2116 /* [65] */ 2117 /* usage */ ParameterUsage::kDepthRef, 2118 /* matcher indices */ &kMatcherIndices[12], 2119 }, 2120 { 2121 /* [66] */ 2122 /* usage */ ParameterUsage::kOffset, 2123 /* matcher indices */ &kMatcherIndices[89], 2124 }, 2125 { 2126 /* [67] */ 2127 /* usage */ ParameterUsage::kTexture, 2128 /* matcher indices */ &kMatcherIndices[93], 2129 }, 2130 { 2131 /* [68] */ 2132 /* usage */ ParameterUsage::kSampler, 2133 /* matcher indices */ &kMatcherIndices[134], 2134 }, 2135 { 2136 /* [69] */ 2137 /* usage */ ParameterUsage::kCoords, 2138 /* matcher indices */ &kMatcherIndices[91], 2139 }, 2140 { 2141 /* [70] */ 2142 /* usage */ ParameterUsage::kArrayIndex, 2143 /* matcher indices */ &kMatcherIndices[55], 2144 }, 2145 { 2146 /* [71] */ 2147 /* usage */ ParameterUsage::kDdx, 2148 /* matcher indices */ &kMatcherIndices[91], 2149 }, 2150 { 2151 /* [72] */ 2152 /* usage */ ParameterUsage::kDdy, 2153 /* matcher indices */ &kMatcherIndices[91], 2154 }, 2155 { 2156 /* [73] */ 2157 /* usage */ ParameterUsage::kTexture, 2158 /* matcher indices */ &kMatcherIndices[130], 2159 }, 2160 { 2161 /* [74] */ 2162 /* usage */ ParameterUsage::kSampler, 2163 /* matcher indices */ &kMatcherIndices[134], 2164 }, 2165 { 2166 /* [75] */ 2167 /* usage */ ParameterUsage::kCoords, 2168 /* matcher indices */ &kMatcherIndices[91], 2169 }, 2170 { 2171 /* [76] */ 2172 /* usage */ ParameterUsage::kArrayIndex, 2173 /* matcher indices */ &kMatcherIndices[55], 2174 }, 2175 { 2176 /* [77] */ 2177 /* usage */ ParameterUsage::kLevel, 2178 /* matcher indices */ &kMatcherIndices[55], 2179 }, 2180 { 2181 /* [78] */ 2182 /* usage */ ParameterUsage::kTexture, 2183 /* matcher indices */ &kMatcherIndices[99], 2184 }, 2185 { 2186 /* [79] */ 2187 /* usage */ ParameterUsage::kSampler, 2188 /* matcher indices */ &kMatcherIndices[134], 2189 }, 2190 { 2191 /* [80] */ 2192 /* usage */ ParameterUsage::kCoords, 2193 /* matcher indices */ &kMatcherIndices[91], 2194 }, 2195 { 2196 /* [81] */ 2197 /* usage */ ParameterUsage::kDdx, 2198 /* matcher indices */ &kMatcherIndices[91], 2199 }, 2200 { 2201 /* [82] */ 2202 /* usage */ ParameterUsage::kDdy, 2203 /* matcher indices */ &kMatcherIndices[91], 2204 }, 2205 { 2206 /* [83] */ 2207 /* usage */ ParameterUsage::kTexture, 2208 /* matcher indices */ &kMatcherIndices[129], 2209 }, 2210 { 2211 /* [84] */ 2212 /* usage */ ParameterUsage::kSampler, 2213 /* matcher indices */ &kMatcherIndices[135], 2214 }, 2215 { 2216 /* [85] */ 2217 /* usage */ ParameterUsage::kCoords, 2218 /* matcher indices */ &kMatcherIndices[91], 2219 }, 2220 { 2221 /* [86] */ 2222 /* usage */ ParameterUsage::kDepthRef, 2223 /* matcher indices */ &kMatcherIndices[12], 2224 }, 2225 { 2226 /* [87] */ 2227 /* usage */ ParameterUsage::kOffset, 2228 /* matcher indices */ &kMatcherIndices[89], 2229 }, 2230 { 2231 /* [88] */ 2232 /* usage */ ParameterUsage::kTexture, 2233 /* matcher indices */ &kMatcherIndices[130], 2234 }, 2235 { 2236 /* [89] */ 2237 /* usage */ ParameterUsage::kSampler, 2238 /* matcher indices */ &kMatcherIndices[135], 2239 }, 2240 { 2241 /* [90] */ 2242 /* usage */ ParameterUsage::kCoords, 2243 /* matcher indices */ &kMatcherIndices[91], 2244 }, 2245 { 2246 /* [91] */ 2247 /* usage */ ParameterUsage::kArrayIndex, 2248 /* matcher indices */ &kMatcherIndices[55], 2249 }, 2250 { 2251 /* [92] */ 2252 /* usage */ ParameterUsage::kDepthRef, 2253 /* matcher indices */ &kMatcherIndices[12], 2254 }, 2255 { 2256 /* [93] */ 2257 /* usage */ ParameterUsage::kTexture, 2258 /* matcher indices */ &kMatcherIndices[130], 2259 }, 2260 { 2261 /* [94] */ 2262 /* usage */ ParameterUsage::kSampler, 2263 /* matcher indices */ &kMatcherIndices[134], 2264 }, 2265 { 2266 /* [95] */ 2267 /* usage */ ParameterUsage::kCoords, 2268 /* matcher indices */ &kMatcherIndices[91], 2269 }, 2270 { 2271 /* [96] */ 2272 /* usage */ ParameterUsage::kArrayIndex, 2273 /* matcher indices */ &kMatcherIndices[55], 2274 }, 2275 { 2276 /* [97] */ 2277 /* usage */ ParameterUsage::kOffset, 2278 /* matcher indices */ &kMatcherIndices[89], 2279 }, 2280 { 2281 /* [98] */ 2282 /* usage */ ParameterUsage::kTexture, 2283 /* matcher indices */ &kMatcherIndices[132], 2284 }, 2285 { 2286 /* [99] */ 2287 /* usage */ ParameterUsage::kSampler, 2288 /* matcher indices */ &kMatcherIndices[135], 2289 }, 2290 { 2291 /* [100] */ 2292 /* usage */ ParameterUsage::kCoords, 2293 /* matcher indices */ &kMatcherIndices[83], 2294 }, 2295 { 2296 /* [101] */ 2297 /* usage */ ParameterUsage::kArrayIndex, 2298 /* matcher indices */ &kMatcherIndices[55], 2299 }, 2300 { 2301 /* [102] */ 2302 /* usage */ ParameterUsage::kDepthRef, 2303 /* matcher indices */ &kMatcherIndices[12], 2304 }, 2305 { 2306 /* [103] */ 2307 /* usage */ ParameterUsage::kComponent, 2308 /* matcher indices */ &kMatcherIndices[55], 2309 }, 2310 { 2311 /* [104] */ 2312 /* usage */ ParameterUsage::kTexture, 2313 /* matcher indices */ &kMatcherIndices[125], 2314 }, 2315 { 2316 /* [105] */ 2317 /* usage */ ParameterUsage::kSampler, 2318 /* matcher indices */ &kMatcherIndices[134], 2319 }, 2320 { 2321 /* [106] */ 2322 /* usage */ ParameterUsage::kCoords, 2323 /* matcher indices */ &kMatcherIndices[83], 2324 }, 2325 { 2326 /* [107] */ 2327 /* usage */ ParameterUsage::kArrayIndex, 2328 /* matcher indices */ &kMatcherIndices[55], 2329 }, 2330 { 2331 /* [108] */ 2332 /* usage */ ParameterUsage::kTexture, 2333 /* matcher indices */ &kMatcherIndices[132], 2334 }, 2335 { 2336 /* [109] */ 2337 /* usage */ ParameterUsage::kSampler, 2338 /* matcher indices */ &kMatcherIndices[135], 2339 }, 2340 { 2341 /* [110] */ 2342 /* usage */ ParameterUsage::kCoords, 2343 /* matcher indices */ &kMatcherIndices[83], 2344 }, 2345 { 2346 /* [111] */ 2347 /* usage */ ParameterUsage::kArrayIndex, 2348 /* matcher indices */ &kMatcherIndices[55], 2349 }, 2350 { 2351 /* [112] */ 2352 /* usage */ ParameterUsage::kDepthRef, 2353 /* matcher indices */ &kMatcherIndices[12], 2354 }, 2355 { 2356 /* [113] */ 2357 /* usage */ ParameterUsage::kTexture, 2358 /* matcher indices */ &kMatcherIndices[85], 2359 }, 2360 { 2361 /* [114] */ 2362 /* usage */ ParameterUsage::kSampler, 2363 /* matcher indices */ &kMatcherIndices[134], 2364 }, 2365 { 2366 /* [115] */ 2367 /* usage */ ParameterUsage::kCoords, 2368 /* matcher indices */ &kMatcherIndices[83], 2369 }, 2370 { 2371 /* [116] */ 2372 /* usage */ ParameterUsage::kDdx, 2373 /* matcher indices */ &kMatcherIndices[83], 2374 }, 2375 { 2376 /* [117] */ 2377 /* usage */ ParameterUsage::kDdy, 2378 /* matcher indices */ &kMatcherIndices[83], 2379 }, 2380 { 2381 /* [118] */ 2382 /* usage */ ParameterUsage::kTexture, 2383 /* matcher indices */ &kMatcherIndices[93], 2384 }, 2385 { 2386 /* [119] */ 2387 /* usage */ ParameterUsage::kSampler, 2388 /* matcher indices */ &kMatcherIndices[134], 2389 }, 2390 { 2391 /* [120] */ 2392 /* usage */ ParameterUsage::kCoords, 2393 /* matcher indices */ &kMatcherIndices[91], 2394 }, 2395 { 2396 /* [121] */ 2397 /* usage */ ParameterUsage::kArrayIndex, 2398 /* matcher indices */ &kMatcherIndices[55], 2399 }, 2400 { 2401 /* [122] */ 2402 /* usage */ ParameterUsage::kOffset, 2403 /* matcher indices */ &kMatcherIndices[89], 2404 }, 2405 { 2406 /* [123] */ 2407 /* usage */ ParameterUsage::kTexture, 2408 /* matcher indices */ &kMatcherIndices[130], 2409 }, 2410 { 2411 /* [124] */ 2412 /* usage */ ParameterUsage::kSampler, 2413 /* matcher indices */ &kMatcherIndices[135], 2414 }, 2415 { 2416 /* [125] */ 2417 /* usage */ ParameterUsage::kCoords, 2418 /* matcher indices */ &kMatcherIndices[91], 2419 }, 2420 { 2421 /* [126] */ 2422 /* usage */ ParameterUsage::kArrayIndex, 2423 /* matcher indices */ &kMatcherIndices[55], 2424 }, 2425 { 2426 /* [127] */ 2427 /* usage */ ParameterUsage::kDepthRef, 2428 /* matcher indices */ &kMatcherIndices[12], 2429 }, 2430 { 2431 /* [128] */ 2432 /* usage */ ParameterUsage::kTexture, 2433 /* matcher indices */ &kMatcherIndices[97], 2434 }, 2435 { 2436 /* [129] */ 2437 /* usage */ ParameterUsage::kSampler, 2438 /* matcher indices */ &kMatcherIndices[134], 2439 }, 2440 { 2441 /* [130] */ 2442 /* usage */ ParameterUsage::kCoords, 2443 /* matcher indices */ &kMatcherIndices[83], 2444 }, 2445 { 2446 /* [131] */ 2447 /* usage */ ParameterUsage::kDdx, 2448 /* matcher indices */ &kMatcherIndices[83], 2449 }, 2450 { 2451 /* [132] */ 2452 /* usage */ ParameterUsage::kDdy, 2453 /* matcher indices */ &kMatcherIndices[83], 2454 }, 2455 { 2456 /* [133] */ 2457 /* usage */ ParameterUsage::kComponent, 2458 /* matcher indices */ &kMatcherIndices[55], 2459 }, 2460 { 2461 /* [134] */ 2462 /* usage */ ParameterUsage::kTexture, 2463 /* matcher indices */ &kMatcherIndices[109], 2464 }, 2465 { 2466 /* [135] */ 2467 /* usage */ ParameterUsage::kSampler, 2468 /* matcher indices */ &kMatcherIndices[134], 2469 }, 2470 { 2471 /* [136] */ 2472 /* usage */ ParameterUsage::kCoords, 2473 /* matcher indices */ &kMatcherIndices[91], 2474 }, 2475 { 2476 /* [137] */ 2477 /* usage */ ParameterUsage::kArrayIndex, 2478 /* matcher indices */ &kMatcherIndices[55], 2479 }, 2480 { 2481 /* [138] */ 2482 /* usage */ ParameterUsage::kTexture, 2483 /* matcher indices */ &kMatcherIndices[99], 2484 }, 2485 { 2486 /* [139] */ 2487 /* usage */ ParameterUsage::kSampler, 2488 /* matcher indices */ &kMatcherIndices[134], 2489 }, 2490 { 2491 /* [140] */ 2492 /* usage */ ParameterUsage::kCoords, 2493 /* matcher indices */ &kMatcherIndices[91], 2494 }, 2495 { 2496 /* [141] */ 2497 /* usage */ ParameterUsage::kLevel, 2498 /* matcher indices */ &kMatcherIndices[12], 2499 }, 2500 { 2501 /* [142] */ 2502 /* usage */ ParameterUsage::kOffset, 2503 /* matcher indices */ &kMatcherIndices[89], 2504 }, 2505 { 2506 /* [143] */ 2507 /* usage */ ParameterUsage::kTexture, 2508 /* matcher indices */ &kMatcherIndices[93], 2509 }, 2510 { 2511 /* [144] */ 2512 /* usage */ ParameterUsage::kSampler, 2513 /* matcher indices */ &kMatcherIndices[134], 2514 }, 2515 { 2516 /* [145] */ 2517 /* usage */ ParameterUsage::kCoords, 2518 /* matcher indices */ &kMatcherIndices[91], 2519 }, 2520 { 2521 /* [146] */ 2522 /* usage */ ParameterUsage::kArrayIndex, 2523 /* matcher indices */ &kMatcherIndices[55], 2524 }, 2525 { 2526 /* [147] */ 2527 /* usage */ ParameterUsage::kLevel, 2528 /* matcher indices */ &kMatcherIndices[12], 2529 }, 2530 { 2531 /* [148] */ 2532 /* usage */ ParameterUsage::kTexture, 2533 /* matcher indices */ &kMatcherIndices[130], 2534 }, 2535 { 2536 /* [149] */ 2537 /* usage */ ParameterUsage::kSampler, 2538 /* matcher indices */ &kMatcherIndices[134], 2539 }, 2540 { 2541 /* [150] */ 2542 /* usage */ ParameterUsage::kCoords, 2543 /* matcher indices */ &kMatcherIndices[91], 2544 }, 2545 { 2546 /* [151] */ 2547 /* usage */ ParameterUsage::kArrayIndex, 2548 /* matcher indices */ &kMatcherIndices[55], 2549 }, 2550 { 2551 /* [152] */ 2552 /* usage */ ParameterUsage::kOffset, 2553 /* matcher indices */ &kMatcherIndices[89], 2554 }, 2555 { 2556 /* [153] */ 2557 /* usage */ ParameterUsage::kComponent, 2558 /* matcher indices */ &kMatcherIndices[55], 2559 }, 2560 { 2561 /* [154] */ 2562 /* usage */ ParameterUsage::kTexture, 2563 /* matcher indices */ &kMatcherIndices[117], 2564 }, 2565 { 2566 /* [155] */ 2567 /* usage */ ParameterUsage::kSampler, 2568 /* matcher indices */ &kMatcherIndices[134], 2569 }, 2570 { 2571 /* [156] */ 2572 /* usage */ ParameterUsage::kCoords, 2573 /* matcher indices */ &kMatcherIndices[91], 2574 }, 2575 { 2576 /* [157] */ 2577 /* usage */ ParameterUsage::kOffset, 2578 /* matcher indices */ &kMatcherIndices[89], 2579 }, 2580 { 2581 /* [158] */ 2582 /* usage */ ParameterUsage::kTexture, 2583 /* matcher indices */ &kMatcherIndices[130], 2584 }, 2585 { 2586 /* [159] */ 2587 /* usage */ ParameterUsage::kSampler, 2588 /* matcher indices */ &kMatcherIndices[135], 2589 }, 2590 { 2591 /* [160] */ 2592 /* usage */ ParameterUsage::kCoords, 2593 /* matcher indices */ &kMatcherIndices[91], 2594 }, 2595 { 2596 /* [161] */ 2597 /* usage */ ParameterUsage::kArrayIndex, 2598 /* matcher indices */ &kMatcherIndices[55], 2599 }, 2600 { 2601 /* [162] */ 2602 /* usage */ ParameterUsage::kDepthRef, 2603 /* matcher indices */ &kMatcherIndices[12], 2604 }, 2605 { 2606 /* [163] */ 2607 /* usage */ ParameterUsage::kTexture, 2608 /* matcher indices */ &kMatcherIndices[129], 2609 }, 2610 { 2611 /* [164] */ 2612 /* usage */ ParameterUsage::kSampler, 2613 /* matcher indices */ &kMatcherIndices[135], 2614 }, 2615 { 2616 /* [165] */ 2617 /* usage */ ParameterUsage::kCoords, 2618 /* matcher indices */ &kMatcherIndices[91], 2619 }, 2620 { 2621 /* [166] */ 2622 /* usage */ ParameterUsage::kDepthRef, 2623 /* matcher indices */ &kMatcherIndices[12], 2624 }, 2625 { 2626 /* [167] */ 2627 /* usage */ ParameterUsage::kOffset, 2628 /* matcher indices */ &kMatcherIndices[89], 2629 }, 2630 { 2631 /* [168] */ 2632 /* usage */ ParameterUsage::kTexture, 2633 /* matcher indices */ &kMatcherIndices[99], 2634 }, 2635 { 2636 /* [169] */ 2637 /* usage */ ParameterUsage::kSampler, 2638 /* matcher indices */ &kMatcherIndices[134], 2639 }, 2640 { 2641 /* [170] */ 2642 /* usage */ ParameterUsage::kCoords, 2643 /* matcher indices */ &kMatcherIndices[91], 2644 }, 2645 { 2646 /* [171] */ 2647 /* usage */ ParameterUsage::kBias, 2648 /* matcher indices */ &kMatcherIndices[12], 2649 }, 2650 { 2651 /* [172] */ 2652 /* usage */ ParameterUsage::kOffset, 2653 /* matcher indices */ &kMatcherIndices[89], 2654 }, 2655 { 2656 /* [173] */ 2657 /* usage */ ParameterUsage::kTexture, 2658 /* matcher indices */ &kMatcherIndices[93], 2659 }, 2660 { 2661 /* [174] */ 2662 /* usage */ ParameterUsage::kSampler, 2663 /* matcher indices */ &kMatcherIndices[134], 2664 }, 2665 { 2666 /* [175] */ 2667 /* usage */ ParameterUsage::kCoords, 2668 /* matcher indices */ &kMatcherIndices[91], 2669 }, 2670 { 2671 /* [176] */ 2672 /* usage */ ParameterUsage::kArrayIndex, 2673 /* matcher indices */ &kMatcherIndices[55], 2674 }, 2675 { 2676 /* [177] */ 2677 /* usage */ ParameterUsage::kBias, 2678 /* matcher indices */ &kMatcherIndices[12], 2679 }, 2680 { 2681 /* [178] */ 2682 /* usage */ ParameterUsage::kTexture, 2683 /* matcher indices */ &kMatcherIndices[129], 2684 }, 2685 { 2686 /* [179] */ 2687 /* usage */ ParameterUsage::kSampler, 2688 /* matcher indices */ &kMatcherIndices[135], 2689 }, 2690 { 2691 /* [180] */ 2692 /* usage */ ParameterUsage::kCoords, 2693 /* matcher indices */ &kMatcherIndices[91], 2694 }, 2695 { 2696 /* [181] */ 2697 /* usage */ ParameterUsage::kDepthRef, 2698 /* matcher indices */ &kMatcherIndices[12], 2699 }, 2700 { 2701 /* [182] */ 2702 /* usage */ ParameterUsage::kOffset, 2703 /* matcher indices */ &kMatcherIndices[89], 2704 }, 2705 { 2706 /* [183] */ 2707 /* usage */ ParameterUsage::kTexture, 2708 /* matcher indices */ &kMatcherIndices[85], 2709 }, 2710 { 2711 /* [184] */ 2712 /* usage */ ParameterUsage::kSampler, 2713 /* matcher indices */ &kMatcherIndices[134], 2714 }, 2715 { 2716 /* [185] */ 2717 /* usage */ ParameterUsage::kCoords, 2718 /* matcher indices */ &kMatcherIndices[83], 2719 }, 2720 { 2721 /* [186] */ 2722 /* usage */ ParameterUsage::kLevel, 2723 /* matcher indices */ &kMatcherIndices[12], 2724 }, 2725 { 2726 /* [187] */ 2727 /* usage */ ParameterUsage::kOffset, 2728 /* matcher indices */ &kMatcherIndices[95], 2729 }, 2730 { 2731 /* [188] */ 2732 /* usage */ ParameterUsage::kTexture, 2733 /* matcher indices */ &kMatcherIndices[132], 2734 }, 2735 { 2736 /* [189] */ 2737 /* usage */ ParameterUsage::kSampler, 2738 /* matcher indices */ &kMatcherIndices[135], 2739 }, 2740 { 2741 /* [190] */ 2742 /* usage */ ParameterUsage::kCoords, 2743 /* matcher indices */ &kMatcherIndices[83], 2744 }, 2745 { 2746 /* [191] */ 2747 /* usage */ ParameterUsage::kArrayIndex, 2748 /* matcher indices */ &kMatcherIndices[55], 2749 }, 2750 { 2751 /* [192] */ 2752 /* usage */ ParameterUsage::kDepthRef, 2753 /* matcher indices */ &kMatcherIndices[12], 2754 }, 2755 { 2756 /* [193] */ 2757 /* usage */ ParameterUsage::kTexture, 2758 /* matcher indices */ &kMatcherIndices[101], 2759 }, 2760 { 2761 /* [194] */ 2762 /* usage */ ParameterUsage::kSampler, 2763 /* matcher indices */ &kMatcherIndices[134], 2764 }, 2765 { 2766 /* [195] */ 2767 /* usage */ ParameterUsage::kCoords, 2768 /* matcher indices */ &kMatcherIndices[83], 2769 }, 2770 { 2771 /* [196] */ 2772 /* usage */ ParameterUsage::kArrayIndex, 2773 /* matcher indices */ &kMatcherIndices[55], 2774 }, 2775 { 2776 /* [197] */ 2777 /* usage */ ParameterUsage::kLevel, 2778 /* matcher indices */ &kMatcherIndices[12], 2779 }, 2780 { 2781 /* [198] */ 2782 /* usage */ ParameterUsage::kTexture, 2783 /* matcher indices */ &kMatcherIndices[101], 2784 }, 2785 { 2786 /* [199] */ 2787 /* usage */ ParameterUsage::kSampler, 2788 /* matcher indices */ &kMatcherIndices[134], 2789 }, 2790 { 2791 /* [200] */ 2792 /* usage */ ParameterUsage::kCoords, 2793 /* matcher indices */ &kMatcherIndices[83], 2794 }, 2795 { 2796 /* [201] */ 2797 /* usage */ ParameterUsage::kArrayIndex, 2798 /* matcher indices */ &kMatcherIndices[55], 2799 }, 2800 { 2801 /* [202] */ 2802 /* usage */ ParameterUsage::kBias, 2803 /* matcher indices */ &kMatcherIndices[12], 2804 }, 2805 { 2806 /* [203] */ 2807 /* usage */ ParameterUsage::kTexture, 2808 /* matcher indices */ &kMatcherIndices[132], 2809 }, 2810 { 2811 /* [204] */ 2812 /* usage */ ParameterUsage::kSampler, 2813 /* matcher indices */ &kMatcherIndices[134], 2814 }, 2815 { 2816 /* [205] */ 2817 /* usage */ ParameterUsage::kCoords, 2818 /* matcher indices */ &kMatcherIndices[83], 2819 }, 2820 { 2821 /* [206] */ 2822 /* usage */ ParameterUsage::kArrayIndex, 2823 /* matcher indices */ &kMatcherIndices[55], 2824 }, 2825 { 2826 /* [207] */ 2827 /* usage */ ParameterUsage::kLevel, 2828 /* matcher indices */ &kMatcherIndices[55], 2829 }, 2830 { 2831 /* [208] */ 2832 /* usage */ ParameterUsage::kTexture, 2833 /* matcher indices */ &kMatcherIndices[129], 2834 }, 2835 { 2836 /* [209] */ 2837 /* usage */ ParameterUsage::kSampler, 2838 /* matcher indices */ &kMatcherIndices[134], 2839 }, 2840 { 2841 /* [210] */ 2842 /* usage */ ParameterUsage::kCoords, 2843 /* matcher indices */ &kMatcherIndices[91], 2844 }, 2845 { 2846 /* [211] */ 2847 /* usage */ ParameterUsage::kLevel, 2848 /* matcher indices */ &kMatcherIndices[55], 2849 }, 2850 { 2851 /* [212] */ 2852 /* usage */ ParameterUsage::kOffset, 2853 /* matcher indices */ &kMatcherIndices[89], 2854 }, 2855 { 2856 /* [213] */ 2857 /* usage */ ParameterUsage::kTexture, 2858 /* matcher indices */ &kMatcherIndices[85], 2859 }, 2860 { 2861 /* [214] */ 2862 /* usage */ ParameterUsage::kSampler, 2863 /* matcher indices */ &kMatcherIndices[134], 2864 }, 2865 { 2866 /* [215] */ 2867 /* usage */ ParameterUsage::kCoords, 2868 /* matcher indices */ &kMatcherIndices[83], 2869 }, 2870 { 2871 /* [216] */ 2872 /* usage */ ParameterUsage::kBias, 2873 /* matcher indices */ &kMatcherIndices[12], 2874 }, 2875 { 2876 /* [217] */ 2877 /* usage */ ParameterUsage::kOffset, 2878 /* matcher indices */ &kMatcherIndices[95], 2879 }, 2880 { 2881 /* [218] */ 2882 /* usage */ ParameterUsage::kTexture, 2883 /* matcher indices */ &kMatcherIndices[129], 2884 }, 2885 { 2886 /* [219] */ 2887 /* usage */ ParameterUsage::kSampler, 2888 /* matcher indices */ &kMatcherIndices[134], 2889 }, 2890 { 2891 /* [220] */ 2892 /* usage */ ParameterUsage::kCoords, 2893 /* matcher indices */ &kMatcherIndices[91], 2894 }, 2895 { 2896 /* [221] */ 2897 /* usage */ ParameterUsage::kOffset, 2898 /* matcher indices */ &kMatcherIndices[89], 2899 }, 2900 { 2901 /* [222] */ 2902 /* usage */ ParameterUsage::kTexture, 2903 /* matcher indices */ &kMatcherIndices[131], 2904 }, 2905 { 2906 /* [223] */ 2907 /* usage */ ParameterUsage::kSampler, 2908 /* matcher indices */ &kMatcherIndices[134], 2909 }, 2910 { 2911 /* [224] */ 2912 /* usage */ ParameterUsage::kCoords, 2913 /* matcher indices */ &kMatcherIndices[83], 2914 }, 2915 { 2916 /* [225] */ 2917 /* usage */ ParameterUsage::kLevel, 2918 /* matcher indices */ &kMatcherIndices[55], 2919 }, 2920 { 2921 /* [226] */ 2922 /* usage */ ParameterUsage::kTexture, 2923 /* matcher indices */ &kMatcherIndices[129], 2924 }, 2925 { 2926 /* [227] */ 2927 /* usage */ ParameterUsage::kSampler, 2928 /* matcher indices */ &kMatcherIndices[134], 2929 }, 2930 { 2931 /* [228] */ 2932 /* usage */ ParameterUsage::kCoords, 2933 /* matcher indices */ &kMatcherIndices[91], 2934 }, 2935 { 2936 /* [229] */ 2937 /* usage */ ParameterUsage::kLevel, 2938 /* matcher indices */ &kMatcherIndices[55], 2939 }, 2940 { 2941 /* [230] */ 2942 /* usage */ ParameterUsage::kTexture, 2943 /* matcher indices */ &kMatcherIndices[97], 2944 }, 2945 { 2946 /* [231] */ 2947 /* usage */ ParameterUsage::kSampler, 2948 /* matcher indices */ &kMatcherIndices[134], 2949 }, 2950 { 2951 /* [232] */ 2952 /* usage */ ParameterUsage::kCoords, 2953 /* matcher indices */ &kMatcherIndices[83], 2954 }, 2955 { 2956 /* [233] */ 2957 /* usage */ ParameterUsage::kBias, 2958 /* matcher indices */ &kMatcherIndices[12], 2959 }, 2960 { 2961 /* [234] */ 2962 /* usage */ ParameterUsage::kTexture, 2963 /* matcher indices */ &kMatcherIndices[97], 2964 }, 2965 { 2966 /* [235] */ 2967 /* usage */ ParameterUsage::kSampler, 2968 /* matcher indices */ &kMatcherIndices[134], 2969 }, 2970 { 2971 /* [236] */ 2972 /* usage */ ParameterUsage::kCoords, 2973 /* matcher indices */ &kMatcherIndices[83], 2974 }, 2975 { 2976 /* [237] */ 2977 /* usage */ ParameterUsage::kLevel, 2978 /* matcher indices */ &kMatcherIndices[12], 2979 }, 2980 { 2981 /* [238] */ 2982 /* usage */ ParameterUsage::kTexture, 2983 /* matcher indices */ &kMatcherIndices[129], 2984 }, 2985 { 2986 /* [239] */ 2987 /* usage */ ParameterUsage::kSampler, 2988 /* matcher indices */ &kMatcherIndices[135], 2989 }, 2990 { 2991 /* [240] */ 2992 /* usage */ ParameterUsage::kCoords, 2993 /* matcher indices */ &kMatcherIndices[91], 2994 }, 2995 { 2996 /* [241] */ 2997 /* usage */ ParameterUsage::kDepthRef, 2998 /* matcher indices */ &kMatcherIndices[12], 2999 }, 3000 { 3001 /* [242] */ 3002 /* usage */ ParameterUsage::kTexture, 3003 /* matcher indices */ &kMatcherIndices[69], 3004 }, 3005 { 3006 /* [243] */ 3007 /* usage */ ParameterUsage::kCoords, 3008 /* matcher indices */ &kMatcherIndices[89], 3009 }, 3010 { 3011 /* [244] */ 3012 /* usage */ ParameterUsage::kArrayIndex, 3013 /* matcher indices */ &kMatcherIndices[55], 3014 }, 3015 { 3016 /* [245] */ 3017 /* usage */ ParameterUsage::kValue, 3018 /* matcher indices */ &kMatcherIndices[87], 3019 }, 3020 { 3021 /* [246] */ 3022 /* usage */ ParameterUsage::kTexture, 3023 /* matcher indices */ &kMatcherIndices[85], 3024 }, 3025 { 3026 /* [247] */ 3027 /* usage */ ParameterUsage::kSampler, 3028 /* matcher indices */ &kMatcherIndices[134], 3029 }, 3030 { 3031 /* [248] */ 3032 /* usage */ ParameterUsage::kCoords, 3033 /* matcher indices */ &kMatcherIndices[83], 3034 }, 3035 { 3036 /* [249] */ 3037 /* usage */ ParameterUsage::kLevel, 3038 /* matcher indices */ &kMatcherIndices[12], 3039 }, 3040 { 3041 /* [250] */ 3042 /* usage */ ParameterUsage::kTexture, 3043 /* matcher indices */ &kMatcherIndices[57], 3044 }, 3045 { 3046 /* [251] */ 3047 /* usage */ ParameterUsage::kCoords, 3048 /* matcher indices */ &kMatcherIndices[89], 3049 }, 3050 { 3051 /* [252] */ 3052 /* usage */ ParameterUsage::kArrayIndex, 3053 /* matcher indices */ &kMatcherIndices[55], 3054 }, 3055 { 3056 /* [253] */ 3057 /* usage */ ParameterUsage::kValue, 3058 /* matcher indices */ &kMatcherIndices[111], 3059 }, 3060 { 3061 /* [254] */ 3062 /* usage */ ParameterUsage::kTexture, 3063 /* matcher indices */ &kMatcherIndices[99], 3064 }, 3065 { 3066 /* [255] */ 3067 /* usage */ ParameterUsage::kSampler, 3068 /* matcher indices */ &kMatcherIndices[134], 3069 }, 3070 { 3071 /* [256] */ 3072 /* usage */ ParameterUsage::kCoords, 3073 /* matcher indices */ &kMatcherIndices[91], 3074 }, 3075 { 3076 /* [257] */ 3077 /* usage */ ParameterUsage::kBias, 3078 /* matcher indices */ &kMatcherIndices[12], 3079 }, 3080 { 3081 /* [258] */ 3082 /* usage */ ParameterUsage::kTexture, 3083 /* matcher indices */ &kMatcherIndices[132], 3084 }, 3085 { 3086 /* [259] */ 3087 /* usage */ ParameterUsage::kSampler, 3088 /* matcher indices */ &kMatcherIndices[134], 3089 }, 3090 { 3091 /* [260] */ 3092 /* usage */ ParameterUsage::kCoords, 3093 /* matcher indices */ &kMatcherIndices[83], 3094 }, 3095 { 3096 /* [261] */ 3097 /* usage */ ParameterUsage::kArrayIndex, 3098 /* matcher indices */ &kMatcherIndices[55], 3099 }, 3100 { 3101 /* [262] */ 3102 /* usage */ ParameterUsage::kTexture, 3103 /* matcher indices */ &kMatcherIndices[130], 3104 }, 3105 { 3106 /* [263] */ 3107 /* usage */ ParameterUsage::kSampler, 3108 /* matcher indices */ &kMatcherIndices[134], 3109 }, 3110 { 3111 /* [264] */ 3112 /* usage */ ParameterUsage::kCoords, 3113 /* matcher indices */ &kMatcherIndices[91], 3114 }, 3115 { 3116 /* [265] */ 3117 /* usage */ ParameterUsage::kArrayIndex, 3118 /* matcher indices */ &kMatcherIndices[55], 3119 }, 3120 { 3121 /* [266] */ 3122 /* usage */ ParameterUsage::kTexture, 3123 /* matcher indices */ &kMatcherIndices[129], 3124 }, 3125 { 3126 /* [267] */ 3127 /* usage */ ParameterUsage::kSampler, 3128 /* matcher indices */ &kMatcherIndices[134], 3129 }, 3130 { 3131 /* [268] */ 3132 /* usage */ ParameterUsage::kCoords, 3133 /* matcher indices */ &kMatcherIndices[91], 3134 }, 3135 { 3136 /* [269] */ 3137 /* usage */ ParameterUsage::kOffset, 3138 /* matcher indices */ &kMatcherIndices[89], 3139 }, 3140 { 3141 /* [270] */ 3142 /* usage */ ParameterUsage::kTexture, 3143 /* matcher indices */ &kMatcherIndices[99], 3144 }, 3145 { 3146 /* [271] */ 3147 /* usage */ ParameterUsage::kSampler, 3148 /* matcher indices */ &kMatcherIndices[134], 3149 }, 3150 { 3151 /* [272] */ 3152 /* usage */ ParameterUsage::kCoords, 3153 /* matcher indices */ &kMatcherIndices[91], 3154 }, 3155 { 3156 /* [273] */ 3157 /* usage */ ParameterUsage::kLevel, 3158 /* matcher indices */ &kMatcherIndices[12], 3159 }, 3160 { 3161 /* [274] */ 3162 /* usage */ ParameterUsage::kTexture, 3163 /* matcher indices */ &kMatcherIndices[101], 3164 }, 3165 { 3166 /* [275] */ 3167 /* usage */ ParameterUsage::kSampler, 3168 /* matcher indices */ &kMatcherIndices[134], 3169 }, 3170 { 3171 /* [276] */ 3172 /* usage */ ParameterUsage::kCoords, 3173 /* matcher indices */ &kMatcherIndices[83], 3174 }, 3175 { 3176 /* [277] */ 3177 /* usage */ ParameterUsage::kArrayIndex, 3178 /* matcher indices */ &kMatcherIndices[55], 3179 }, 3180 { 3181 /* [278] */ 3182 /* usage */ ParameterUsage::kTexture, 3183 /* matcher indices */ &kMatcherIndices[85], 3184 }, 3185 { 3186 /* [279] */ 3187 /* usage */ ParameterUsage::kSampler, 3188 /* matcher indices */ &kMatcherIndices[134], 3189 }, 3190 { 3191 /* [280] */ 3192 /* usage */ ParameterUsage::kCoords, 3193 /* matcher indices */ &kMatcherIndices[83], 3194 }, 3195 { 3196 /* [281] */ 3197 /* usage */ ParameterUsage::kOffset, 3198 /* matcher indices */ &kMatcherIndices[95], 3199 }, 3200 { 3201 /* [282] */ 3202 /* usage */ ParameterUsage::kTexture, 3203 /* matcher indices */ &kMatcherIndices[45], 3204 }, 3205 { 3206 /* [283] */ 3207 /* usage */ ParameterUsage::kCoords, 3208 /* matcher indices */ &kMatcherIndices[89], 3209 }, 3210 { 3211 /* [284] */ 3212 /* usage */ ParameterUsage::kArrayIndex, 3213 /* matcher indices */ &kMatcherIndices[55], 3214 }, 3215 { 3216 /* [285] */ 3217 /* usage */ ParameterUsage::kValue, 3218 /* matcher indices */ &kMatcherIndices[113], 3219 }, 3220 { 3221 /* [286] */ 3222 /* usage */ ParameterUsage::kTexture, 3223 /* matcher indices */ &kMatcherIndices[93], 3224 }, 3225 { 3226 /* [287] */ 3227 /* usage */ ParameterUsage::kSampler, 3228 /* matcher indices */ &kMatcherIndices[134], 3229 }, 3230 { 3231 /* [288] */ 3232 /* usage */ ParameterUsage::kCoords, 3233 /* matcher indices */ &kMatcherIndices[91], 3234 }, 3235 { 3236 /* [289] */ 3237 /* usage */ ParameterUsage::kArrayIndex, 3238 /* matcher indices */ &kMatcherIndices[55], 3239 }, 3240 { 3241 /* [290] */ 3242 /* usage */ ParameterUsage::kTexture, 3243 /* matcher indices */ &kMatcherIndices[131], 3244 }, 3245 { 3246 /* [291] */ 3247 /* usage */ ParameterUsage::kSampler, 3248 /* matcher indices */ &kMatcherIndices[135], 3249 }, 3250 { 3251 /* [292] */ 3252 /* usage */ ParameterUsage::kCoords, 3253 /* matcher indices */ &kMatcherIndices[83], 3254 }, 3255 { 3256 /* [293] */ 3257 /* usage */ ParameterUsage::kDepthRef, 3258 /* matcher indices */ &kMatcherIndices[12], 3259 }, 3260 { 3261 /* [294] */ 3262 /* usage */ ParameterUsage::kTexture, 3263 /* matcher indices */ &kMatcherIndices[109], 3264 }, 3265 { 3266 /* [295] */ 3267 /* usage */ ParameterUsage::kCoords, 3268 /* matcher indices */ &kMatcherIndices[89], 3269 }, 3270 { 3271 /* [296] */ 3272 /* usage */ ParameterUsage::kArrayIndex, 3273 /* matcher indices */ &kMatcherIndices[55], 3274 }, 3275 { 3276 /* [297] */ 3277 /* usage */ ParameterUsage::kLevel, 3278 /* matcher indices */ &kMatcherIndices[55], 3279 }, 3280 { 3281 /* [298] */ 3282 /* usage */ ParameterUsage::kTexture, 3283 /* matcher indices */ &kMatcherIndices[129], 3284 }, 3285 { 3286 /* [299] */ 3287 /* usage */ ParameterUsage::kSampler, 3288 /* matcher indices */ &kMatcherIndices[135], 3289 }, 3290 { 3291 /* [300] */ 3292 /* usage */ ParameterUsage::kCoords, 3293 /* matcher indices */ &kMatcherIndices[91], 3294 }, 3295 { 3296 /* [301] */ 3297 /* usage */ ParameterUsage::kDepthRef, 3298 /* matcher indices */ &kMatcherIndices[12], 3299 }, 3300 { 3301 /* [302] */ 3302 /* usage */ ParameterUsage::kTexture, 3303 /* matcher indices */ &kMatcherIndices[132], 3304 }, 3305 { 3306 /* [303] */ 3307 /* usage */ ParameterUsage::kSampler, 3308 /* matcher indices */ &kMatcherIndices[134], 3309 }, 3310 { 3311 /* [304] */ 3312 /* usage */ ParameterUsage::kCoords, 3313 /* matcher indices */ &kMatcherIndices[83], 3314 }, 3315 { 3316 /* [305] */ 3317 /* usage */ ParameterUsage::kArrayIndex, 3318 /* matcher indices */ &kMatcherIndices[55], 3319 }, 3320 { 3321 /* [306] */ 3322 /* usage */ ParameterUsage::kTexture, 3323 /* matcher indices */ &kMatcherIndices[130], 3324 }, 3325 { 3326 /* [307] */ 3327 /* usage */ ParameterUsage::kCoords, 3328 /* matcher indices */ &kMatcherIndices[89], 3329 }, 3330 { 3331 /* [308] */ 3332 /* usage */ ParameterUsage::kArrayIndex, 3333 /* matcher indices */ &kMatcherIndices[55], 3334 }, 3335 { 3336 /* [309] */ 3337 /* usage */ ParameterUsage::kLevel, 3338 /* matcher indices */ &kMatcherIndices[55], 3339 }, 3340 { 3341 /* [310] */ 3342 /* usage */ ParameterUsage::kTexture, 3343 /* matcher indices */ &kMatcherIndices[131], 3344 }, 3345 { 3346 /* [311] */ 3347 /* usage */ ParameterUsage::kSampler, 3348 /* matcher indices */ &kMatcherIndices[135], 3349 }, 3350 { 3351 /* [312] */ 3352 /* usage */ ParameterUsage::kCoords, 3353 /* matcher indices */ &kMatcherIndices[83], 3354 }, 3355 { 3356 /* [313] */ 3357 /* usage */ ParameterUsage::kDepthRef, 3358 /* matcher indices */ &kMatcherIndices[12], 3359 }, 3360 { 3361 /* [314] */ 3362 /* usage */ ParameterUsage::kTexture, 3363 /* matcher indices */ &kMatcherIndices[130], 3364 }, 3365 { 3366 /* [315] */ 3367 /* usage */ ParameterUsage::kSampler, 3368 /* matcher indices */ &kMatcherIndices[134], 3369 }, 3370 { 3371 /* [316] */ 3372 /* usage */ ParameterUsage::kCoords, 3373 /* matcher indices */ &kMatcherIndices[91], 3374 }, 3375 { 3376 /* [317] */ 3377 /* usage */ ParameterUsage::kArrayIndex, 3378 /* matcher indices */ &kMatcherIndices[55], 3379 }, 3380 { 3381 /* [318] */ 3382 /* usage */ ParameterUsage::kComponent, 3383 /* matcher indices */ &kMatcherIndices[55], 3384 }, 3385 { 3386 /* [319] */ 3387 /* usage */ ParameterUsage::kTexture, 3388 /* matcher indices */ &kMatcherIndices[123], 3389 }, 3390 { 3391 /* [320] */ 3392 /* usage */ ParameterUsage::kSampler, 3393 /* matcher indices */ &kMatcherIndices[134], 3394 }, 3395 { 3396 /* [321] */ 3397 /* usage */ ParameterUsage::kCoords, 3398 /* matcher indices */ &kMatcherIndices[83], 3399 }, 3400 { 3401 /* [322] */ 3402 /* usage */ ParameterUsage::kTexture, 3403 /* matcher indices */ &kMatcherIndices[85], 3404 }, 3405 { 3406 /* [323] */ 3407 /* usage */ ParameterUsage::kSampler, 3408 /* matcher indices */ &kMatcherIndices[134], 3409 }, 3410 { 3411 /* [324] */ 3412 /* usage */ ParameterUsage::kCoords, 3413 /* matcher indices */ &kMatcherIndices[83], 3414 }, 3415 { 3416 /* [325] */ 3417 /* usage */ ParameterUsage::kBias, 3418 /* matcher indices */ &kMatcherIndices[12], 3419 }, 3420 { 3421 /* [326] */ 3422 /* usage */ ParameterUsage::kTexture, 3423 /* matcher indices */ &kMatcherIndices[129], 3424 }, 3425 { 3426 /* [327] */ 3427 /* usage */ ParameterUsage::kSampler, 3428 /* matcher indices */ &kMatcherIndices[135], 3429 }, 3430 { 3431 /* [328] */ 3432 /* usage */ ParameterUsage::kCoords, 3433 /* matcher indices */ &kMatcherIndices[91], 3434 }, 3435 { 3436 /* [329] */ 3437 /* usage */ ParameterUsage::kDepthRef, 3438 /* matcher indices */ &kMatcherIndices[12], 3439 }, 3440 { 3441 /* [330] */ 3442 /* usage */ ParameterUsage::kComponent, 3443 /* matcher indices */ &kMatcherIndices[55], 3444 }, 3445 { 3446 /* [331] */ 3447 /* usage */ ParameterUsage::kTexture, 3448 /* matcher indices */ &kMatcherIndices[117], 3449 }, 3450 { 3451 /* [332] */ 3452 /* usage */ ParameterUsage::kSampler, 3453 /* matcher indices */ &kMatcherIndices[134], 3454 }, 3455 { 3456 /* [333] */ 3457 /* usage */ ParameterUsage::kCoords, 3458 /* matcher indices */ &kMatcherIndices[91], 3459 }, 3460 { 3461 /* [334] */ 3462 /* usage */ ParameterUsage::kTexture, 3463 /* matcher indices */ &kMatcherIndices[131], 3464 }, 3465 { 3466 /* [335] */ 3467 /* usage */ ParameterUsage::kSampler, 3468 /* matcher indices */ &kMatcherIndices[135], 3469 }, 3470 { 3471 /* [336] */ 3472 /* usage */ ParameterUsage::kCoords, 3473 /* matcher indices */ &kMatcherIndices[83], 3474 }, 3475 { 3476 /* [337] */ 3477 /* usage */ ParameterUsage::kDepthRef, 3478 /* matcher indices */ &kMatcherIndices[12], 3479 }, 3480 { 3481 /* [338] */ 3482 /* usage */ ParameterUsage::kTexture, 3483 /* matcher indices */ &kMatcherIndices[99], 3484 }, 3485 { 3486 /* [339] */ 3487 /* usage */ ParameterUsage::kSampler, 3488 /* matcher indices */ &kMatcherIndices[134], 3489 }, 3490 { 3491 /* [340] */ 3492 /* usage */ ParameterUsage::kCoords, 3493 /* matcher indices */ &kMatcherIndices[91], 3494 }, 3495 { 3496 /* [341] */ 3497 /* usage */ ParameterUsage::kOffset, 3498 /* matcher indices */ &kMatcherIndices[89], 3499 }, 3500 { 3501 /* [342] */ 3502 /* usage */ ParameterUsage::kNone, 3503 /* matcher indices */ &kMatcherIndices[12], 3504 }, 3505 { 3506 /* [343] */ 3507 /* usage */ ParameterUsage::kNone, 3508 /* matcher indices */ &kMatcherIndices[12], 3509 }, 3510 { 3511 /* [344] */ 3512 /* usage */ ParameterUsage::kNone, 3513 /* matcher indices */ &kMatcherIndices[12], 3514 }, 3515 { 3516 /* [345] */ 3517 /* usage */ ParameterUsage::kTexture, 3518 /* matcher indices */ &kMatcherIndices[75], 3519 }, 3520 { 3521 /* [346] */ 3522 /* usage */ ParameterUsage::kCoords, 3523 /* matcher indices */ &kMatcherIndices[55], 3524 }, 3525 { 3526 /* [347] */ 3527 /* usage */ ParameterUsage::kValue, 3528 /* matcher indices */ &kMatcherIndices[87], 3529 }, 3530 { 3531 /* [348] */ 3532 /* usage */ ParameterUsage::kNone, 3533 /* matcher indices */ &kMatcherIndices[21], 3534 }, 3535 { 3536 /* [349] */ 3537 /* usage */ ParameterUsage::kNone, 3538 /* matcher indices */ &kMatcherIndices[21], 3539 }, 3540 { 3541 /* [350] */ 3542 /* usage */ ParameterUsage::kNone, 3543 /* matcher indices */ &kMatcherIndices[21], 3544 }, 3545 { 3546 /* [351] */ 3547 /* usage */ ParameterUsage::kNone, 3548 /* matcher indices */ &kMatcherIndices[12], 3549 }, 3550 { 3551 /* [352] */ 3552 /* usage */ ParameterUsage::kNone, 3553 /* matcher indices */ &kMatcherIndices[12], 3554 }, 3555 { 3556 /* [353] */ 3557 /* usage */ ParameterUsage::kNone, 3558 /* matcher indices */ &kMatcherIndices[12], 3559 }, 3560 { 3561 /* [354] */ 3562 /* usage */ ParameterUsage::kNone, 3563 /* matcher indices */ &kMatcherIndices[21], 3564 }, 3565 { 3566 /* [355] */ 3567 /* usage */ ParameterUsage::kNone, 3568 /* matcher indices */ &kMatcherIndices[21], 3569 }, 3570 { 3571 /* [356] */ 3572 /* usage */ ParameterUsage::kNone, 3573 /* matcher indices */ &kMatcherIndices[21], 3574 }, 3575 { 3576 /* [357] */ 3577 /* usage */ ParameterUsage::kTexture, 3578 /* matcher indices */ &kMatcherIndices[136], 3579 }, 3580 { 3581 /* [358] */ 3582 /* usage */ ParameterUsage::kSampler, 3583 /* matcher indices */ &kMatcherIndices[134], 3584 }, 3585 { 3586 /* [359] */ 3587 /* usage */ ParameterUsage::kCoords, 3588 /* matcher indices */ &kMatcherIndices[91], 3589 }, 3590 { 3591 /* [360] */ 3592 /* usage */ ParameterUsage::kTexture, 3593 /* matcher indices */ &kMatcherIndices[129], 3594 }, 3595 { 3596 /* [361] */ 3597 /* usage */ ParameterUsage::kSampler, 3598 /* matcher indices */ &kMatcherIndices[134], 3599 }, 3600 { 3601 /* [362] */ 3602 /* usage */ ParameterUsage::kCoords, 3603 /* matcher indices */ &kMatcherIndices[91], 3604 }, 3605 { 3606 /* [363] */ 3607 /* usage */ ParameterUsage::kTexture, 3608 /* matcher indices */ &kMatcherIndices[72], 3609 }, 3610 { 3611 /* [364] */ 3612 /* usage */ ParameterUsage::kCoords, 3613 /* matcher indices */ &kMatcherIndices[89], 3614 }, 3615 { 3616 /* [365] */ 3617 /* usage */ ParameterUsage::kValue, 3618 /* matcher indices */ &kMatcherIndices[87], 3619 }, 3620 { 3621 /* [366] */ 3622 /* usage */ ParameterUsage::kTexture, 3623 /* matcher indices */ &kMatcherIndices[133], 3624 }, 3625 { 3626 /* [367] */ 3627 /* usage */ ParameterUsage::kCoords, 3628 /* matcher indices */ &kMatcherIndices[89], 3629 }, 3630 { 3631 /* [368] */ 3632 /* usage */ ParameterUsage::kSampleIndex, 3633 /* matcher indices */ &kMatcherIndices[55], 3634 }, 3635 { 3636 /* [369] */ 3637 /* usage */ ParameterUsage::kTexture, 3638 /* matcher indices */ &kMatcherIndices[60], 3639 }, 3640 { 3641 /* [370] */ 3642 /* usage */ ParameterUsage::kCoords, 3643 /* matcher indices */ &kMatcherIndices[89], 3644 }, 3645 { 3646 /* [371] */ 3647 /* usage */ ParameterUsage::kValue, 3648 /* matcher indices */ &kMatcherIndices[111], 3649 }, 3650 { 3651 /* [372] */ 3652 /* usage */ ParameterUsage::kTexture, 3653 /* matcher indices */ &kMatcherIndices[129], 3654 }, 3655 { 3656 /* [373] */ 3657 /* usage */ ParameterUsage::kCoords, 3658 /* matcher indices */ &kMatcherIndices[89], 3659 }, 3660 { 3661 /* [374] */ 3662 /* usage */ ParameterUsage::kLevel, 3663 /* matcher indices */ &kMatcherIndices[55], 3664 }, 3665 { 3666 /* [375] */ 3667 /* usage */ ParameterUsage::kTexture, 3668 /* matcher indices */ &kMatcherIndices[131], 3669 }, 3670 { 3671 /* [376] */ 3672 /* usage */ ParameterUsage::kSampler, 3673 /* matcher indices */ &kMatcherIndices[134], 3674 }, 3675 { 3676 /* [377] */ 3677 /* usage */ ParameterUsage::kCoords, 3678 /* matcher indices */ &kMatcherIndices[83], 3679 }, 3680 { 3681 /* [378] */ 3682 /* usage */ ParameterUsage::kNone, 3683 /* matcher indices */ &kMatcherIndices[12], 3684 }, 3685 { 3686 /* [379] */ 3687 /* usage */ ParameterUsage::kNone, 3688 /* matcher indices */ &kMatcherIndices[12], 3689 }, 3690 { 3691 /* [380] */ 3692 /* usage */ ParameterUsage::kNone, 3693 /* matcher indices */ &kMatcherIndices[12], 3694 }, 3695 { 3696 /* [381] */ 3697 /* usage */ ParameterUsage::kNone, 3698 /* matcher indices */ &kMatcherIndices[21], 3699 }, 3700 { 3701 /* [382] */ 3702 /* usage */ ParameterUsage::kNone, 3703 /* matcher indices */ &kMatcherIndices[21], 3704 }, 3705 { 3706 /* [383] */ 3707 /* usage */ ParameterUsage::kNone, 3708 /* matcher indices */ &kMatcherIndices[21], 3709 }, 3710 { 3711 /* [384] */ 3712 /* usage */ ParameterUsage::kNone, 3713 /* matcher indices */ &kMatcherIndices[21], 3714 }, 3715 { 3716 /* [385] */ 3717 /* usage */ ParameterUsage::kNone, 3718 /* matcher indices */ &kMatcherIndices[21], 3719 }, 3720 { 3721 /* [386] */ 3722 /* usage */ ParameterUsage::kNone, 3723 /* matcher indices */ &kMatcherIndices[12], 3724 }, 3725 { 3726 /* [387] */ 3727 /* usage */ ParameterUsage::kNone, 3728 /* matcher indices */ &kMatcherIndices[0], 3729 }, 3730 { 3731 /* [388] */ 3732 /* usage */ ParameterUsage::kNone, 3733 /* matcher indices */ &kMatcherIndices[1], 3734 }, 3735 { 3736 /* [389] */ 3737 /* usage */ ParameterUsage::kNone, 3738 /* matcher indices */ &kMatcherIndices[1], 3739 }, 3740 { 3741 /* [390] */ 3742 /* usage */ ParameterUsage::kTexture, 3743 /* matcher indices */ &kMatcherIndices[66], 3744 }, 3745 { 3746 /* [391] */ 3747 /* usage */ ParameterUsage::kCoords, 3748 /* matcher indices */ &kMatcherIndices[95], 3749 }, 3750 { 3751 /* [392] */ 3752 /* usage */ ParameterUsage::kValue, 3753 /* matcher indices */ &kMatcherIndices[87], 3754 }, 3755 { 3756 /* [393] */ 3757 /* usage */ ParameterUsage::kTexture, 3758 /* matcher indices */ &kMatcherIndices[63], 3759 }, 3760 { 3761 /* [394] */ 3762 /* usage */ ParameterUsage::kCoords, 3763 /* matcher indices */ &kMatcherIndices[55], 3764 }, 3765 { 3766 /* [395] */ 3767 /* usage */ ParameterUsage::kValue, 3768 /* matcher indices */ &kMatcherIndices[111], 3769 }, 3770 { 3771 /* [396] */ 3772 /* usage */ ParameterUsage::kTexture, 3773 /* matcher indices */ &kMatcherIndices[121], 3774 }, 3775 { 3776 /* [397] */ 3777 /* usage */ ParameterUsage::kCoords, 3778 /* matcher indices */ &kMatcherIndices[89], 3779 }, 3780 { 3781 /* [398] */ 3782 /* usage */ ParameterUsage::kSampleIndex, 3783 /* matcher indices */ &kMatcherIndices[55], 3784 }, 3785 { 3786 /* [399] */ 3787 /* usage */ ParameterUsage::kTexture, 3788 /* matcher indices */ &kMatcherIndices[119], 3789 }, 3790 { 3791 /* [400] */ 3792 /* usage */ ParameterUsage::kCoords, 3793 /* matcher indices */ &kMatcherIndices[95], 3794 }, 3795 { 3796 /* [401] */ 3797 /* usage */ ParameterUsage::kLevel, 3798 /* matcher indices */ &kMatcherIndices[55], 3799 }, 3800 { 3801 /* [402] */ 3802 /* usage */ ParameterUsage::kNone, 3803 /* matcher indices */ &kMatcherIndices[1], 3804 }, 3805 { 3806 /* [403] */ 3807 /* usage */ ParameterUsage::kNone, 3808 /* matcher indices */ &kMatcherIndices[1], 3809 }, 3810 { 3811 /* [404] */ 3812 /* usage */ ParameterUsage::kNone, 3813 /* matcher indices */ &kMatcherIndices[1], 3814 }, 3815 { 3816 /* [405] */ 3817 /* usage */ ParameterUsage::kTexture, 3818 /* matcher indices */ &kMatcherIndices[131], 3819 }, 3820 { 3821 /* [406] */ 3822 /* usage */ ParameterUsage::kSampler, 3823 /* matcher indices */ &kMatcherIndices[134], 3824 }, 3825 { 3826 /* [407] */ 3827 /* usage */ ParameterUsage::kCoords, 3828 /* matcher indices */ &kMatcherIndices[83], 3829 }, 3830 { 3831 /* [408] */ 3832 /* usage */ ParameterUsage::kNone, 3833 /* matcher indices */ &kMatcherIndices[30], 3834 }, 3835 { 3836 /* [409] */ 3837 /* usage */ ParameterUsage::kNone, 3838 /* matcher indices */ &kMatcherIndices[30], 3839 }, 3840 { 3841 /* [410] */ 3842 /* usage */ ParameterUsage::kNone, 3843 /* matcher indices */ &kMatcherIndices[30], 3844 }, 3845 { 3846 /* [411] */ 3847 /* usage */ ParameterUsage::kTexture, 3848 /* matcher indices */ &kMatcherIndices[117], 3849 }, 3850 { 3851 /* [412] */ 3852 /* usage */ ParameterUsage::kCoords, 3853 /* matcher indices */ &kMatcherIndices[89], 3854 }, 3855 { 3856 /* [413] */ 3857 /* usage */ ParameterUsage::kLevel, 3858 /* matcher indices */ &kMatcherIndices[55], 3859 }, 3860 { 3861 /* [414] */ 3862 /* usage */ ParameterUsage::kTexture, 3863 /* matcher indices */ &kMatcherIndices[127], 3864 }, 3865 { 3866 /* [415] */ 3867 /* usage */ ParameterUsage::kSampler, 3868 /* matcher indices */ &kMatcherIndices[134], 3869 }, 3870 { 3871 /* [416] */ 3872 /* usage */ ParameterUsage::kCoords, 3873 /* matcher indices */ &kMatcherIndices[12], 3874 }, 3875 { 3876 /* [417] */ 3877 /* usage */ ParameterUsage::kTexture, 3878 /* matcher indices */ &kMatcherIndices[99], 3879 }, 3880 { 3881 /* [418] */ 3882 /* usage */ ParameterUsage::kSampler, 3883 /* matcher indices */ &kMatcherIndices[134], 3884 }, 3885 { 3886 /* [419] */ 3887 /* usage */ ParameterUsage::kCoords, 3888 /* matcher indices */ &kMatcherIndices[91], 3889 }, 3890 { 3891 /* [420] */ 3892 /* usage */ ParameterUsage::kNone, 3893 /* matcher indices */ &kMatcherIndices[21], 3894 }, 3895 { 3896 /* [421] */ 3897 /* usage */ ParameterUsage::kNone, 3898 /* matcher indices */ &kMatcherIndices[21], 3899 }, 3900 { 3901 /* [422] */ 3902 /* usage */ ParameterUsage::kNone, 3903 /* matcher indices */ &kMatcherIndices[12], 3904 }, 3905 { 3906 /* [423] */ 3907 /* usage */ ParameterUsage::kTexture, 3908 /* matcher indices */ &kMatcherIndices[54], 3909 }, 3910 { 3911 /* [424] */ 3912 /* usage */ ParameterUsage::kCoords, 3913 /* matcher indices */ &kMatcherIndices[95], 3914 }, 3915 { 3916 /* [425] */ 3917 /* usage */ ParameterUsage::kValue, 3918 /* matcher indices */ &kMatcherIndices[111], 3919 }, 3920 { 3921 /* [426] */ 3922 /* usage */ ParameterUsage::kNone, 3923 /* matcher indices */ &kMatcherIndices[21], 3924 }, 3925 { 3926 /* [427] */ 3927 /* usage */ ParameterUsage::kNone, 3928 /* matcher indices */ &kMatcherIndices[21], 3929 }, 3930 { 3931 /* [428] */ 3932 /* usage */ ParameterUsage::kNone, 3933 /* matcher indices */ &kMatcherIndices[21], 3934 }, 3935 { 3936 /* [429] */ 3937 /* usage */ ParameterUsage::kTexture, 3938 /* matcher indices */ &kMatcherIndices[129], 3939 }, 3940 { 3941 /* [430] */ 3942 /* usage */ ParameterUsage::kSampler, 3943 /* matcher indices */ &kMatcherIndices[134], 3944 }, 3945 { 3946 /* [431] */ 3947 /* usage */ ParameterUsage::kCoords, 3948 /* matcher indices */ &kMatcherIndices[91], 3949 }, 3950 { 3951 /* [432] */ 3952 /* usage */ ParameterUsage::kTexture, 3953 /* matcher indices */ &kMatcherIndices[51], 3954 }, 3955 { 3956 /* [433] */ 3957 /* usage */ ParameterUsage::kCoords, 3958 /* matcher indices */ &kMatcherIndices[55], 3959 }, 3960 { 3961 /* [434] */ 3962 /* usage */ ParameterUsage::kValue, 3963 /* matcher indices */ &kMatcherIndices[113], 3964 }, 3965 { 3966 /* [435] */ 3967 /* usage */ ParameterUsage::kNone, 3968 /* matcher indices */ &kMatcherIndices[1], 3969 }, 3970 { 3971 /* [436] */ 3972 /* usage */ ParameterUsage::kNone, 3973 /* matcher indices */ &kMatcherIndices[1], 3974 }, 3975 { 3976 /* [437] */ 3977 /* usage */ ParameterUsage::kNone, 3978 /* matcher indices */ &kMatcherIndices[10], 3979 }, 3980 { 3981 /* [438] */ 3982 /* usage */ ParameterUsage::kNone, 3983 /* matcher indices */ &kMatcherIndices[30], 3984 }, 3985 { 3986 /* [439] */ 3987 /* usage */ ParameterUsage::kNone, 3988 /* matcher indices */ &kMatcherIndices[30], 3989 }, 3990 { 3991 /* [440] */ 3992 /* usage */ ParameterUsage::kNone, 3993 /* matcher indices */ &kMatcherIndices[10], 3994 }, 3995 { 3996 /* [441] */ 3997 /* usage */ ParameterUsage::kNone, 3998 /* matcher indices */ &kMatcherIndices[30], 3999 }, 4000 { 4001 /* [442] */ 4002 /* usage */ ParameterUsage::kNone, 4003 /* matcher indices */ &kMatcherIndices[30], 4004 }, 4005 { 4006 /* [443] */ 4007 /* usage */ ParameterUsage::kNone, 4008 /* matcher indices */ &kMatcherIndices[24], 4009 }, 4010 { 4011 /* [444] */ 4012 /* usage */ ParameterUsage::kTexture, 4013 /* matcher indices */ &kMatcherIndices[97], 4014 }, 4015 { 4016 /* [445] */ 4017 /* usage */ ParameterUsage::kSampler, 4018 /* matcher indices */ &kMatcherIndices[134], 4019 }, 4020 { 4021 /* [446] */ 4022 /* usage */ ParameterUsage::kCoords, 4023 /* matcher indices */ &kMatcherIndices[83], 4024 }, 4025 { 4026 /* [447] */ 4027 /* usage */ ParameterUsage::kTexture, 4028 /* matcher indices */ &kMatcherIndices[48], 4029 }, 4030 { 4031 /* [448] */ 4032 /* usage */ ParameterUsage::kCoords, 4033 /* matcher indices */ &kMatcherIndices[89], 4034 }, 4035 { 4036 /* [449] */ 4037 /* usage */ ParameterUsage::kValue, 4038 /* matcher indices */ &kMatcherIndices[113], 4039 }, 4040 { 4041 /* [450] */ 4042 /* usage */ ParameterUsage::kTexture, 4043 /* matcher indices */ &kMatcherIndices[85], 4044 }, 4045 { 4046 /* [451] */ 4047 /* usage */ ParameterUsage::kSampler, 4048 /* matcher indices */ &kMatcherIndices[134], 4049 }, 4050 { 4051 /* [452] */ 4052 /* usage */ ParameterUsage::kCoords, 4053 /* matcher indices */ &kMatcherIndices[83], 4054 }, 4055 { 4056 /* [453] */ 4057 /* usage */ ParameterUsage::kTexture, 4058 /* matcher indices */ &kMatcherIndices[42], 4059 }, 4060 { 4061 /* [454] */ 4062 /* usage */ ParameterUsage::kCoords, 4063 /* matcher indices */ &kMatcherIndices[95], 4064 }, 4065 { 4066 /* [455] */ 4067 /* usage */ ParameterUsage::kValue, 4068 /* matcher indices */ &kMatcherIndices[113], 4069 }, 4070 { 4071 /* [456] */ 4072 /* usage */ ParameterUsage::kTexture, 4073 /* matcher indices */ &kMatcherIndices[81], 4074 }, 4075 { 4076 /* [457] */ 4077 /* usage */ ParameterUsage::kCoords, 4078 /* matcher indices */ &kMatcherIndices[55], 4079 }, 4080 { 4081 /* [458] */ 4082 /* usage */ ParameterUsage::kLevel, 4083 /* matcher indices */ &kMatcherIndices[55], 4084 }, 4085 { 4086 /* [459] */ 4087 /* usage */ ParameterUsage::kNone, 4088 /* matcher indices */ &kMatcherIndices[30], 4089 }, 4090 { 4091 /* [460] */ 4092 /* usage */ ParameterUsage::kNone, 4093 /* matcher indices */ &kMatcherIndices[30], 4094 }, 4095 { 4096 /* [461] */ 4097 /* usage */ ParameterUsage::kTexture, 4098 /* matcher indices */ &kMatcherIndices[131], 4099 }, 4100 { 4101 /* [462] */ 4102 /* usage */ ParameterUsage::kLevel, 4103 /* matcher indices */ &kMatcherIndices[55], 4104 }, 4105 { 4106 /* [463] */ 4107 /* usage */ ParameterUsage::kNone, 4108 /* matcher indices */ &kMatcherIndices[83], 4109 }, 4110 { 4111 /* [464] */ 4112 /* usage */ ParameterUsage::kNone, 4113 /* matcher indices */ &kMatcherIndices[83], 4114 }, 4115 { 4116 /* [465] */ 4117 /* usage */ ParameterUsage::kNone, 4118 /* matcher indices */ &kMatcherIndices[21], 4119 }, 4120 { 4121 /* [466] */ 4122 /* usage */ ParameterUsage::kNone, 4123 /* matcher indices */ &kMatcherIndices[21], 4124 }, 4125 { 4126 /* [467] */ 4127 /* usage */ ParameterUsage::kNone, 4128 /* matcher indices */ &kMatcherIndices[21], 4129 }, 4130 { 4131 /* [468] */ 4132 /* usage */ ParameterUsage::kNone, 4133 /* matcher indices */ &kMatcherIndices[21], 4134 }, 4135 { 4136 /* [469] */ 4137 /* usage */ ParameterUsage::kNone, 4138 /* matcher indices */ &kMatcherIndices[12], 4139 }, 4140 { 4141 /* [470] */ 4142 /* usage */ ParameterUsage::kNone, 4143 /* matcher indices */ &kMatcherIndices[12], 4144 }, 4145 { 4146 /* [471] */ 4147 /* usage */ ParameterUsage::kNone, 4148 /* matcher indices */ &kMatcherIndices[21], 4149 }, 4150 { 4151 /* [472] */ 4152 /* usage */ ParameterUsage::kNone, 4153 /* matcher indices */ &kMatcherIndices[21], 4154 }, 4155 { 4156 /* [473] */ 4157 /* usage */ ParameterUsage::kNone, 4158 /* matcher indices */ &kMatcherIndices[0], 4159 }, 4160 { 4161 /* [474] */ 4162 /* usage */ ParameterUsage::kNone, 4163 /* matcher indices */ &kMatcherIndices[1], 4164 }, 4165 { 4166 /* [475] */ 4167 /* usage */ ParameterUsage::kNone, 4168 /* matcher indices */ &kMatcherIndices[12], 4169 }, 4170 { 4171 /* [476] */ 4172 /* usage */ ParameterUsage::kNone, 4173 /* matcher indices */ &kMatcherIndices[12], 4174 }, 4175 { 4176 /* [477] */ 4177 /* usage */ ParameterUsage::kNone, 4178 /* matcher indices */ &kMatcherIndices[12], 4179 }, 4180 { 4181 /* [478] */ 4182 /* usage */ ParameterUsage::kNone, 4183 /* matcher indices */ &kMatcherIndices[12], 4184 }, 4185 { 4186 /* [479] */ 4187 /* usage */ ParameterUsage::kNone, 4188 /* matcher indices */ &kMatcherIndices[21], 4189 }, 4190 { 4191 /* [480] */ 4192 /* usage */ ParameterUsage::kNone, 4193 /* matcher indices */ &kMatcherIndices[21], 4194 }, 4195 { 4196 /* [481] */ 4197 /* usage */ ParameterUsage::kNone, 4198 /* matcher indices */ &kMatcherIndices[30], 4199 }, 4200 { 4201 /* [482] */ 4202 /* usage */ ParameterUsage::kNone, 4203 /* matcher indices */ &kMatcherIndices[30], 4204 }, 4205 { 4206 /* [483] */ 4207 /* usage */ ParameterUsage::kNone, 4208 /* matcher indices */ &kMatcherIndices[21], 4209 }, 4210 { 4211 /* [484] */ 4212 /* usage */ ParameterUsage::kNone, 4213 /* matcher indices */ &kMatcherIndices[21], 4214 }, 4215 { 4216 /* [485] */ 4217 /* usage */ ParameterUsage::kNone, 4218 /* matcher indices */ &kMatcherIndices[12], 4219 }, 4220 { 4221 /* [486] */ 4222 /* usage */ ParameterUsage::kNone, 4223 /* matcher indices */ &kMatcherIndices[12], 4224 }, 4225 { 4226 /* [487] */ 4227 /* usage */ ParameterUsage::kNone, 4228 /* matcher indices */ &kMatcherIndices[12], 4229 }, 4230 { 4231 /* [488] */ 4232 /* usage */ ParameterUsage::kNone, 4233 /* matcher indices */ &kMatcherIndices[55], 4234 }, 4235 { 4236 /* [489] */ 4237 /* usage */ ParameterUsage::kNone, 4238 /* matcher indices */ &kMatcherIndices[30], 4239 }, 4240 { 4241 /* [490] */ 4242 /* usage */ ParameterUsage::kNone, 4243 /* matcher indices */ &kMatcherIndices[30], 4244 }, 4245 { 4246 /* [491] */ 4247 /* usage */ ParameterUsage::kNone, 4248 /* matcher indices */ &kMatcherIndices[1], 4249 }, 4250 { 4251 /* [492] */ 4252 /* usage */ ParameterUsage::kNone, 4253 /* matcher indices */ &kMatcherIndices[1], 4254 }, 4255 { 4256 /* [493] */ 4257 /* usage */ ParameterUsage::kNone, 4258 /* matcher indices */ &kMatcherIndices[1], 4259 }, 4260 { 4261 /* [494] */ 4262 /* usage */ ParameterUsage::kNone, 4263 /* matcher indices */ &kMatcherIndices[1], 4264 }, 4265 { 4266 /* [495] */ 4267 /* usage */ ParameterUsage::kTexture, 4268 /* matcher indices */ &kMatcherIndices[136], 4269 }, 4270 { 4271 /* [496] */ 4272 /* usage */ ParameterUsage::kCoords, 4273 /* matcher indices */ &kMatcherIndices[89], 4274 }, 4275 { 4276 /* [497] */ 4277 /* usage */ ParameterUsage::kTexture, 4278 /* matcher indices */ &kMatcherIndices[130], 4279 }, 4280 { 4281 /* [498] */ 4282 /* usage */ ParameterUsage::kLevel, 4283 /* matcher indices */ &kMatcherIndices[55], 4284 }, 4285 { 4286 /* [499] */ 4287 /* usage */ ParameterUsage::kNone, 4288 /* matcher indices */ &kMatcherIndices[0], 4289 }, 4290 { 4291 /* [500] */ 4292 /* usage */ ParameterUsage::kNone, 4293 /* matcher indices */ &kMatcherIndices[1], 4294 }, 4295 { 4296 /* [501] */ 4297 /* usage */ ParameterUsage::kNone, 4298 /* matcher indices */ &kMatcherIndices[0], 4299 }, 4300 { 4301 /* [502] */ 4302 /* usage */ ParameterUsage::kNone, 4303 /* matcher indices */ &kMatcherIndices[1], 4304 }, 4305 { 4306 /* [503] */ 4307 /* usage */ ParameterUsage::kTexture, 4308 /* matcher indices */ &kMatcherIndices[81], 4309 }, 4310 { 4311 /* [504] */ 4312 /* usage */ ParameterUsage::kLevel, 4313 /* matcher indices */ &kMatcherIndices[55], 4314 }, 4315 { 4316 /* [505] */ 4317 /* usage */ ParameterUsage::kNone, 4318 /* matcher indices */ &kMatcherIndices[0], 4319 }, 4320 { 4321 /* [506] */ 4322 /* usage */ ParameterUsage::kNone, 4323 /* matcher indices */ &kMatcherIndices[1], 4324 }, 4325 { 4326 /* [507] */ 4327 /* usage */ ParameterUsage::kTexture, 4328 /* matcher indices */ &kMatcherIndices[117], 4329 }, 4330 { 4331 /* [508] */ 4332 /* usage */ ParameterUsage::kLevel, 4333 /* matcher indices */ &kMatcherIndices[55], 4334 }, 4335 { 4336 /* [509] */ 4337 /* usage */ ParameterUsage::kNone, 4338 /* matcher indices */ &kMatcherIndices[0], 4339 }, 4340 { 4341 /* [510] */ 4342 /* usage */ ParameterUsage::kNone, 4343 /* matcher indices */ &kMatcherIndices[1], 4344 }, 4345 { 4346 /* [511] */ 4347 /* usage */ ParameterUsage::kTexture, 4348 /* matcher indices */ &kMatcherIndices[109], 4349 }, 4350 { 4351 /* [512] */ 4352 /* usage */ ParameterUsage::kLevel, 4353 /* matcher indices */ &kMatcherIndices[55], 4354 }, 4355 { 4356 /* [513] */ 4357 /* usage */ ParameterUsage::kNone, 4358 /* matcher indices */ &kMatcherIndices[21], 4359 }, 4360 { 4361 /* [514] */ 4362 /* usage */ ParameterUsage::kNone, 4363 /* matcher indices */ &kMatcherIndices[78], 4364 }, 4365 { 4366 /* [515] */ 4367 /* usage */ ParameterUsage::kTexture, 4368 /* matcher indices */ &kMatcherIndices[119], 4369 }, 4370 { 4371 /* [516] */ 4372 /* usage */ ParameterUsage::kLevel, 4373 /* matcher indices */ &kMatcherIndices[55], 4374 }, 4375 { 4376 /* [517] */ 4377 /* usage */ ParameterUsage::kNone, 4378 /* matcher indices */ &kMatcherIndices[0], 4379 }, 4380 { 4381 /* [518] */ 4382 /* usage */ ParameterUsage::kNone, 4383 /* matcher indices */ &kMatcherIndices[1], 4384 }, 4385 { 4386 /* [519] */ 4387 /* usage */ ParameterUsage::kTexture, 4388 /* matcher indices */ &kMatcherIndices[123], 4389 }, 4390 { 4391 /* [520] */ 4392 /* usage */ ParameterUsage::kLevel, 4393 /* matcher indices */ &kMatcherIndices[55], 4394 }, 4395 { 4396 /* [521] */ 4397 /* usage */ ParameterUsage::kNone, 4398 /* matcher indices */ &kMatcherIndices[0], 4399 }, 4400 { 4401 /* [522] */ 4402 /* usage */ ParameterUsage::kNone, 4403 /* matcher indices */ &kMatcherIndices[1], 4404 }, 4405 { 4406 /* [523] */ 4407 /* usage */ ParameterUsage::kTexture, 4408 /* matcher indices */ &kMatcherIndices[125], 4409 }, 4410 { 4411 /* [524] */ 4412 /* usage */ ParameterUsage::kLevel, 4413 /* matcher indices */ &kMatcherIndices[55], 4414 }, 4415 { 4416 /* [525] */ 4417 /* usage */ ParameterUsage::kNone, 4418 /* matcher indices */ &kMatcherIndices[0], 4419 }, 4420 { 4421 /* [526] */ 4422 /* usage */ ParameterUsage::kNone, 4423 /* matcher indices */ &kMatcherIndices[1], 4424 }, 4425 { 4426 /* [527] */ 4427 /* usage */ ParameterUsage::kTexture, 4428 /* matcher indices */ &kMatcherIndices[132], 4429 }, 4430 { 4431 /* [528] */ 4432 /* usage */ ParameterUsage::kLevel, 4433 /* matcher indices */ &kMatcherIndices[55], 4434 }, 4435 { 4436 /* [529] */ 4437 /* usage */ ParameterUsage::kTexture, 4438 /* matcher indices */ &kMatcherIndices[129], 4439 }, 4440 { 4441 /* [530] */ 4442 /* usage */ ParameterUsage::kLevel, 4443 /* matcher indices */ &kMatcherIndices[55], 4444 }, 4445 { 4446 /* [531] */ 4447 /* usage */ ParameterUsage::kNone, 4448 /* matcher indices */ &kMatcherIndices[0], 4449 }, 4450 { 4451 /* [532] */ 4452 /* usage */ ParameterUsage::kNone, 4453 /* matcher indices */ &kMatcherIndices[1], 4454 }, 4455 { 4456 /* [533] */ 4457 /* usage */ ParameterUsage::kTexture, 4458 /* matcher indices */ &kMatcherIndices[125], 4459 }, 4460 { 4461 /* [534] */ 4462 /* usage */ ParameterUsage::kTexture, 4463 /* matcher indices */ &kMatcherIndices[131], 4464 }, 4465 { 4466 /* [535] */ 4467 /* usage */ ParameterUsage::kTexture, 4468 /* matcher indices */ &kMatcherIndices[130], 4469 }, 4470 { 4471 /* [536] */ 4472 /* usage */ ParameterUsage::kTexture, 4473 /* matcher indices */ &kMatcherIndices[132], 4474 }, 4475 { 4476 /* [537] */ 4477 /* usage */ ParameterUsage::kTexture, 4478 /* matcher indices */ &kMatcherIndices[129], 4479 }, 4480 { 4481 /* [538] */ 4482 /* usage */ ParameterUsage::kTexture, 4483 /* matcher indices */ &kMatcherIndices[133], 4484 }, 4485 { 4486 /* [539] */ 4487 /* usage */ ParameterUsage::kTexture, 4488 /* matcher indices */ &kMatcherIndices[39], 4489 }, 4490 { 4491 /* [540] */ 4492 /* usage */ ParameterUsage::kTexture, 4493 /* matcher indices */ &kMatcherIndices[36], 4494 }, 4495 { 4496 /* [541] */ 4497 /* usage */ ParameterUsage::kTexture, 4498 /* matcher indices */ &kMatcherIndices[27], 4499 }, 4500 { 4501 /* [542] */ 4502 /* usage */ ParameterUsage::kTexture, 4503 /* matcher indices */ &kMatcherIndices[33], 4504 }, 4505 { 4506 /* [543] */ 4507 /* usage */ ParameterUsage::kTexture, 4508 /* matcher indices */ &kMatcherIndices[136], 4509 }, 4510 { 4511 /* [544] */ 4512 /* usage */ ParameterUsage::kTexture, 4513 /* matcher indices */ &kMatcherIndices[121], 4514 }, 4515 { 4516 /* [545] */ 4517 /* usage */ ParameterUsage::kTexture, 4518 /* matcher indices */ &kMatcherIndices[123], 4519 }, 4520 { 4521 /* [546] */ 4522 /* usage */ ParameterUsage::kTexture, 4523 /* matcher indices */ &kMatcherIndices[119], 4524 }, 4525 { 4526 /* [547] */ 4527 /* usage */ ParameterUsage::kTexture, 4528 /* matcher indices */ &kMatcherIndices[109], 4529 }, 4530 { 4531 /* [548] */ 4532 /* usage */ ParameterUsage::kTexture, 4533 /* matcher indices */ &kMatcherIndices[117], 4534 }, 4535 { 4536 /* [549] */ 4537 /* usage */ ParameterUsage::kTexture, 4538 /* matcher indices */ &kMatcherIndices[81], 4539 }, 4540 { 4541 /* [550] */ 4542 /* usage */ ParameterUsage::kNone, 4543 /* matcher indices */ &kMatcherIndices[43], 4544 }, 4545 { 4546 /* [551] */ 4547 /* usage */ ParameterUsage::kNone, 4548 /* matcher indices */ &kMatcherIndices[43], 4549 }, 4550 { 4551 /* [552] */ 4552 /* usage */ ParameterUsage::kNone, 4553 /* matcher indices */ &kMatcherIndices[43], 4554 }, 4555 { 4556 /* [553] */ 4557 /* usage */ ParameterUsage::kNone, 4558 /* matcher indices */ &kMatcherIndices[43], 4559 }, 4560 { 4561 /* [554] */ 4562 /* usage */ ParameterUsage::kNone, 4563 /* matcher indices */ &kMatcherIndices[43], 4564 }, 4565 { 4566 /* [555] */ 4567 /* usage */ ParameterUsage::kNone, 4568 /* matcher indices */ &kMatcherIndices[21], 4569 }, 4570 { 4571 /* [556] */ 4572 /* usage */ ParameterUsage::kNone, 4573 /* matcher indices */ &kMatcherIndices[12], 4574 }, 4575 { 4576 /* [557] */ 4577 /* usage */ ParameterUsage::kNone, 4578 /* matcher indices */ &kMatcherIndices[13], 4579 }, 4580 { 4581 /* [558] */ 4582 /* usage */ ParameterUsage::kNone, 4583 /* matcher indices */ &kMatcherIndices[21], 4584 }, 4585 { 4586 /* [559] */ 4587 /* usage */ ParameterUsage::kNone, 4588 /* matcher indices */ &kMatcherIndices[12], 4589 }, 4590 { 4591 /* [560] */ 4592 /* usage */ ParameterUsage::kNone, 4593 /* matcher indices */ &kMatcherIndices[21], 4594 }, 4595 { 4596 /* [561] */ 4597 /* usage */ ParameterUsage::kNone, 4598 /* matcher indices */ &kMatcherIndices[12], 4599 }, 4600 { 4601 /* [562] */ 4602 /* usage */ ParameterUsage::kTexture, 4603 /* matcher indices */ &kMatcherIndices[109], 4604 }, 4605 { 4606 /* [563] */ 4607 /* usage */ ParameterUsage::kTexture, 4608 /* matcher indices */ &kMatcherIndices[125], 4609 }, 4610 { 4611 /* [564] */ 4612 /* usage */ ParameterUsage::kTexture, 4613 /* matcher indices */ &kMatcherIndices[130], 4614 }, 4615 { 4616 /* [565] */ 4617 /* usage */ ParameterUsage::kTexture, 4618 /* matcher indices */ &kMatcherIndices[132], 4619 }, 4620 { 4621 /* [566] */ 4622 /* usage */ ParameterUsage::kTexture, 4623 /* matcher indices */ &kMatcherIndices[27], 4624 }, 4625 { 4626 /* [567] */ 4627 /* usage */ ParameterUsage::kTexture, 4628 /* matcher indices */ &kMatcherIndices[81], 4629 }, 4630 { 4631 /* [568] */ 4632 /* usage */ ParameterUsage::kTexture, 4633 /* matcher indices */ &kMatcherIndices[117], 4634 }, 4635 { 4636 /* [569] */ 4637 /* usage */ ParameterUsage::kTexture, 4638 /* matcher indices */ &kMatcherIndices[109], 4639 }, 4640 { 4641 /* [570] */ 4642 /* usage */ ParameterUsage::kTexture, 4643 /* matcher indices */ &kMatcherIndices[119], 4644 }, 4645 { 4646 /* [571] */ 4647 /* usage */ ParameterUsage::kTexture, 4648 /* matcher indices */ &kMatcherIndices[123], 4649 }, 4650 { 4651 /* [572] */ 4652 /* usage */ ParameterUsage::kTexture, 4653 /* matcher indices */ &kMatcherIndices[125], 4654 }, 4655 { 4656 /* [573] */ 4657 /* usage */ ParameterUsage::kTexture, 4658 /* matcher indices */ &kMatcherIndices[129], 4659 }, 4660 { 4661 /* [574] */ 4662 /* usage */ ParameterUsage::kTexture, 4663 /* matcher indices */ &kMatcherIndices[130], 4664 }, 4665 { 4666 /* [575] */ 4667 /* usage */ ParameterUsage::kTexture, 4668 /* matcher indices */ &kMatcherIndices[131], 4669 }, 4670 { 4671 /* [576] */ 4672 /* usage */ ParameterUsage::kTexture, 4673 /* matcher indices */ &kMatcherIndices[132], 4674 }, 4675 { 4676 /* [577] */ 4677 /* usage */ ParameterUsage::kTexture, 4678 /* matcher indices */ &kMatcherIndices[121], 4679 }, 4680 { 4681 /* [578] */ 4682 /* usage */ ParameterUsage::kTexture, 4683 /* matcher indices */ &kMatcherIndices[133], 4684 }, 4685 { 4686 /* [579] */ 4687 /* usage */ ParameterUsage::kNone, 4688 /* matcher indices */ &kMatcherIndices[21], 4689 }, 4690 { 4691 /* [580] */ 4692 /* usage */ ParameterUsage::kNone, 4693 /* matcher indices */ &kMatcherIndices[12], 4694 }, 4695 { 4696 /* [581] */ 4697 /* usage */ ParameterUsage::kNone, 4698 /* matcher indices */ &kMatcherIndices[21], 4699 }, 4700 { 4701 /* [582] */ 4702 /* usage */ ParameterUsage::kNone, 4703 /* matcher indices */ &kMatcherIndices[12], 4704 }, 4705 { 4706 /* [583] */ 4707 /* usage */ ParameterUsage::kNone, 4708 /* matcher indices */ &kMatcherIndices[21], 4709 }, 4710 { 4711 /* [584] */ 4712 /* usage */ ParameterUsage::kNone, 4713 /* matcher indices */ &kMatcherIndices[12], 4714 }, 4715 { 4716 /* [585] */ 4717 /* usage */ ParameterUsage::kNone, 4718 /* matcher indices */ &kMatcherIndices[21], 4719 }, 4720 { 4721 /* [586] */ 4722 /* usage */ ParameterUsage::kNone, 4723 /* matcher indices */ &kMatcherIndices[12], 4724 }, 4725 { 4726 /* [587] */ 4727 /* usage */ ParameterUsage::kNone, 4728 /* matcher indices */ &kMatcherIndices[21], 4729 }, 4730 { 4731 /* [588] */ 4732 /* usage */ ParameterUsage::kNone, 4733 /* matcher indices */ &kMatcherIndices[12], 4734 }, 4735 { 4736 /* [589] */ 4737 /* usage */ ParameterUsage::kNone, 4738 /* matcher indices */ &kMatcherIndices[30], 4739 }, 4740 { 4741 /* [590] */ 4742 /* usage */ ParameterUsage::kNone, 4743 /* matcher indices */ &kMatcherIndices[1], 4744 }, 4745 { 4746 /* [591] */ 4747 /* usage */ ParameterUsage::kNone, 4748 /* matcher indices */ &kMatcherIndices[87], 4749 }, 4750 { 4751 /* [592] */ 4752 /* usage */ ParameterUsage::kNone, 4753 /* matcher indices */ &kMatcherIndices[87], 4754 }, 4755 { 4756 /* [593] */ 4757 /* usage */ ParameterUsage::kNone, 4758 /* matcher indices */ &kMatcherIndices[91], 4759 }, 4760 { 4761 /* [594] */ 4762 /* usage */ ParameterUsage::kNone, 4763 /* matcher indices */ &kMatcherIndices[91], 4764 }, 4765 { 4766 /* [595] */ 4767 /* usage */ ParameterUsage::kNone, 4768 /* matcher indices */ &kMatcherIndices[91], 4769 }, 4770 { 4771 /* [596] */ 4772 /* usage */ ParameterUsage::kNone, 4773 /* matcher indices */ &kMatcherIndices[21], 4774 }, 4775 { 4776 /* [597] */ 4777 /* usage */ ParameterUsage::kNone, 4778 /* matcher indices */ &kMatcherIndices[21], 4779 }, 4780 { 4781 /* [598] */ 4782 /* usage */ ParameterUsage::kNone, 4783 /* matcher indices */ &kMatcherIndices[12], 4784 }, 4785 { 4786 /* [599] */ 4787 /* usage */ ParameterUsage::kNone, 4788 /* matcher indices */ &kMatcherIndices[21], 4789 }, 4790 { 4791 /* [600] */ 4792 /* usage */ ParameterUsage::kNone, 4793 /* matcher indices */ &kMatcherIndices[12], 4794 }, 4795 { 4796 /* [601] */ 4797 /* usage */ ParameterUsage::kNone, 4798 /* matcher indices */ &kMatcherIndices[21], 4799 }, 4800 { 4801 /* [602] */ 4802 /* usage */ ParameterUsage::kNone, 4803 /* matcher indices */ &kMatcherIndices[12], 4804 }, 4805 { 4806 /* [603] */ 4807 /* usage */ ParameterUsage::kNone, 4808 /* matcher indices */ &kMatcherIndices[21], 4809 }, 4810 { 4811 /* [604] */ 4812 /* usage */ ParameterUsage::kNone, 4813 /* matcher indices */ &kMatcherIndices[12], 4814 }, 4815 { 4816 /* [605] */ 4817 /* usage */ ParameterUsage::kNone, 4818 /* matcher indices */ &kMatcherIndices[21], 4819 }, 4820 { 4821 /* [606] */ 4822 /* usage */ ParameterUsage::kNone, 4823 /* matcher indices */ &kMatcherIndices[12], 4824 }, 4825 { 4826 /* [607] */ 4827 /* usage */ ParameterUsage::kNone, 4828 /* matcher indices */ &kMatcherIndices[21], 4829 }, 4830 { 4831 /* [608] */ 4832 /* usage */ ParameterUsage::kNone, 4833 /* matcher indices */ &kMatcherIndices[12], 4834 }, 4835 { 4836 /* [609] */ 4837 /* usage */ ParameterUsage::kNone, 4838 /* matcher indices */ &kMatcherIndices[21], 4839 }, 4840 { 4841 /* [610] */ 4842 /* usage */ ParameterUsage::kNone, 4843 /* matcher indices */ &kMatcherIndices[12], 4844 }, 4845 { 4846 /* [611] */ 4847 /* usage */ ParameterUsage::kNone, 4848 /* matcher indices */ &kMatcherIndices[21], 4849 }, 4850 { 4851 /* [612] */ 4852 /* usage */ ParameterUsage::kNone, 4853 /* matcher indices */ &kMatcherIndices[12], 4854 }, 4855 { 4856 /* [613] */ 4857 /* usage */ ParameterUsage::kNone, 4858 /* matcher indices */ &kMatcherIndices[21], 4859 }, 4860 { 4861 /* [614] */ 4862 /* usage */ ParameterUsage::kNone, 4863 /* matcher indices */ &kMatcherIndices[12], 4864 }, 4865 { 4866 /* [615] */ 4867 /* usage */ ParameterUsage::kNone, 4868 /* matcher indices */ &kMatcherIndices[1], 4869 }, 4870 { 4871 /* [616] */ 4872 /* usage */ ParameterUsage::kNone, 4873 /* matcher indices */ &kMatcherIndices[21], 4874 }, 4875 { 4876 /* [617] */ 4877 /* usage */ ParameterUsage::kNone, 4878 /* matcher indices */ &kMatcherIndices[12], 4879 }, 4880 { 4881 /* [618] */ 4882 /* usage */ ParameterUsage::kNone, 4883 /* matcher indices */ &kMatcherIndices[21], 4884 }, 4885 { 4886 /* [619] */ 4887 /* usage */ ParameterUsage::kNone, 4888 /* matcher indices */ &kMatcherIndices[12], 4889 }, 4890 { 4891 /* [620] */ 4892 /* usage */ ParameterUsage::kNone, 4893 /* matcher indices */ &kMatcherIndices[21], 4894 }, 4895 { 4896 /* [621] */ 4897 /* usage */ ParameterUsage::kNone, 4898 /* matcher indices */ &kMatcherIndices[12], 4899 }, 4900 { 4901 /* [622] */ 4902 /* usage */ ParameterUsage::kNone, 4903 /* matcher indices */ &kMatcherIndices[21], 4904 }, 4905 { 4906 /* [623] */ 4907 /* usage */ ParameterUsage::kNone, 4908 /* matcher indices */ &kMatcherIndices[12], 4909 }, 4910 { 4911 /* [624] */ 4912 /* usage */ ParameterUsage::kNone, 4913 /* matcher indices */ &kMatcherIndices[21], 4914 }, 4915 { 4916 /* [625] */ 4917 /* usage */ ParameterUsage::kNone, 4918 /* matcher indices */ &kMatcherIndices[12], 4919 }, 4920 { 4921 /* [626] */ 4922 /* usage */ ParameterUsage::kNone, 4923 /* matcher indices */ &kMatcherIndices[21], 4924 }, 4925 { 4926 /* [627] */ 4927 /* usage */ ParameterUsage::kNone, 4928 /* matcher indices */ &kMatcherIndices[12], 4929 }, 4930 { 4931 /* [628] */ 4932 /* usage */ ParameterUsage::kNone, 4933 /* matcher indices */ &kMatcherIndices[21], 4934 }, 4935 { 4936 /* [629] */ 4937 /* usage */ ParameterUsage::kNone, 4938 /* matcher indices */ &kMatcherIndices[12], 4939 }, 4940 { 4941 /* [630] */ 4942 /* usage */ ParameterUsage::kNone, 4943 /* matcher indices */ &kMatcherIndices[21], 4944 }, 4945 { 4946 /* [631] */ 4947 /* usage */ ParameterUsage::kNone, 4948 /* matcher indices */ &kMatcherIndices[12], 4949 }, 4950 { 4951 /* [632] */ 4952 /* usage */ ParameterUsage::kNone, 4953 /* matcher indices */ &kMatcherIndices[21], 4954 }, 4955 { 4956 /* [633] */ 4957 /* usage */ ParameterUsage::kNone, 4958 /* matcher indices */ &kMatcherIndices[12], 4959 }, 4960 { 4961 /* [634] */ 4962 /* usage */ ParameterUsage::kNone, 4963 /* matcher indices */ &kMatcherIndices[21], 4964 }, 4965 { 4966 /* [635] */ 4967 /* usage */ ParameterUsage::kNone, 4968 /* matcher indices */ &kMatcherIndices[12], 4969 }, 4970 { 4971 /* [636] */ 4972 /* usage */ ParameterUsage::kNone, 4973 /* matcher indices */ &kMatcherIndices[21], 4974 }, 4975 { 4976 /* [637] */ 4977 /* usage */ ParameterUsage::kNone, 4978 /* matcher indices */ &kMatcherIndices[12], 4979 }, 4980 { 4981 /* [638] */ 4982 /* usage */ ParameterUsage::kNone, 4983 /* matcher indices */ &kMatcherIndices[21], 4984 }, 4985 { 4986 /* [639] */ 4987 /* usage */ ParameterUsage::kNone, 4988 /* matcher indices */ &kMatcherIndices[12], 4989 }, 4990 { 4991 /* [640] */ 4992 /* usage */ ParameterUsage::kNone, 4993 /* matcher indices */ &kMatcherIndices[21], 4994 }, 4995 { 4996 /* [641] */ 4997 /* usage */ ParameterUsage::kNone, 4998 /* matcher indices */ &kMatcherIndices[12], 4999 }, 5000 { 5001 /* [642] */ 5002 /* usage */ ParameterUsage::kNone, 5003 /* matcher indices */ &kMatcherIndices[21], 5004 }, 5005 { 5006 /* [643] */ 5007 /* usage */ ParameterUsage::kNone, 5008 /* matcher indices */ &kMatcherIndices[12], 5009 }, 5010 { 5011 /* [644] */ 5012 /* usage */ ParameterUsage::kNone, 5013 /* matcher indices */ &kMatcherIndices[17], 5014 }, 5015 { 5016 /* [645] */ 5017 /* usage */ ParameterUsage::kNone, 5018 /* matcher indices */ &kMatcherIndices[30], 5019 }, 5020 { 5021 /* [646] */ 5022 /* usage */ ParameterUsage::kNone, 5023 /* matcher indices */ &kMatcherIndices[1], 5024 }, 5025 { 5026 /* [647] */ 5027 /* usage */ ParameterUsage::kNone, 5028 /* matcher indices */ &kMatcherIndices[21], 5029 }, 5030 { 5031 /* [648] */ 5032 /* usage */ ParameterUsage::kNone, 5033 /* matcher indices */ &kMatcherIndices[12], 5034 }, 5035 { 5036 /* [649] */ 5037 /* usage */ ParameterUsage::kNone, 5038 /* matcher indices */ &kMatcherIndices[21], 5039 }, 5040 { 5041 /* [650] */ 5042 /* usage */ ParameterUsage::kNone, 5043 /* matcher indices */ &kMatcherIndices[12], 5044 }, 5045 { 5046 /* [651] */ 5047 /* usage */ ParameterUsage::kNone, 5048 /* matcher indices */ &kMatcherIndices[21], 5049 }, 5050 { 5051 /* [652] */ 5052 /* usage */ ParameterUsage::kNone, 5053 /* matcher indices */ &kMatcherIndices[12], 5054 }, 5055 { 5056 /* [653] */ 5057 /* usage */ ParameterUsage::kNone, 5058 /* matcher indices */ &kMatcherIndices[21], 5059 }, 5060 { 5061 /* [654] */ 5062 /* usage */ ParameterUsage::kNone, 5063 /* matcher indices */ &kMatcherIndices[12], 5064 }, 5065 { 5066 /* [655] */ 5067 /* usage */ ParameterUsage::kNone, 5068 /* matcher indices */ &kMatcherIndices[21], 5069 }, 5070 { 5071 /* [656] */ 5072 /* usage */ ParameterUsage::kNone, 5073 /* matcher indices */ &kMatcherIndices[12], 5074 }, 5075 { 5076 /* [657] */ 5077 /* usage */ ParameterUsage::kNone, 5078 /* matcher indices */ &kMatcherIndices[4], 5079 }, 5080 { 5081 /* [658] */ 5082 /* usage */ ParameterUsage::kNone, 5083 /* matcher indices */ &kMatcherIndices[0], 5084 }, 5085 { 5086 /* [659] */ 5087 /* usage */ ParameterUsage::kNone, 5088 /* matcher indices */ &kMatcherIndices[24], 5089 }, 5090 { 5091 /* [660] */ 5092 /* usage */ ParameterUsage::kNone, 5093 /* matcher indices */ &kMatcherIndices[10], 5094 }, 5095 { 5096 /* [661] */ 5097 /* usage */ ParameterUsage::kNone, 5098 /* matcher indices */ &kMatcherIndices[24], 5099 }, 5100 { 5101 /* [662] */ 5102 /* usage */ ParameterUsage::kNone, 5103 /* matcher indices */ &kMatcherIndices[10], 5104 }, 5105 { 5106 /* [663] */ 5107 /* usage */ ParameterUsage::kNone, 5108 /* matcher indices */ &kMatcherIndices[21], 5109 }, 5110 { 5111 /* [664] */ 5112 /* usage */ ParameterUsage::kNone, 5113 /* matcher indices */ &kMatcherIndices[12], 5114 }, 5115 { 5116 /* [665] */ 5117 /* usage */ ParameterUsage::kNone, 5118 /* matcher indices */ &kMatcherIndices[30], 5119 }, 5120 { 5121 /* [666] */ 5122 /* usage */ ParameterUsage::kNone, 5123 /* matcher indices */ &kMatcherIndices[1], 5124 }, 5125}; 5126 5127constexpr OpenTypeInfo kOpenTypes[] = { 5128 { 5129 /* [0] */ 5130 /* name */ "T", 5131 /* matcher index */ 36, 5132 }, 5133 { 5134 /* [1] */ 5135 /* name */ "T", 5136 /* matcher index */ 37, 5137 }, 5138 { 5139 /* [2] */ 5140 /* name */ "T", 5141 /* matcher index */ kNoMatcher, 5142 }, 5143 { 5144 /* [3] */ 5145 /* name */ "T", 5146 /* matcher index */ 38, 5147 }, 5148}; 5149 5150constexpr OpenNumberInfo kOpenNumbers[] = { 5151 { 5152 /* [0] */ 5153 /* name */ "F", 5154 /* matcher index */ kNoMatcher, 5155 }, 5156 { 5157 /* [1] */ 5158 /* name */ "A", 5159 /* matcher index */ 5, 5160 }, 5161 { 5162 /* [2] */ 5163 /* name */ "M", 5164 /* matcher index */ kNoMatcher, 5165 }, 5166 { 5167 /* [3] */ 5168 /* name */ "N", 5169 /* matcher index */ kNoMatcher, 5170 }, 5171 { 5172 /* [4] */ 5173 /* name */ "A", 5174 /* matcher index */ kNoMatcher, 5175 }, 5176 { 5177 /* [5] */ 5178 /* name */ "S", 5179 /* matcher index */ 7, 5180 }, 5181}; 5182 5183constexpr OverloadInfo kOverloads[] = { 5184 { 5185 /* [0] */ 5186 /* num parameters */ 1, 5187 /* num open types */ 1, 5188 /* num open numbers */ 0, 5189 /* open types */ &kOpenTypes[0], 5190 /* open numbers */ &kOpenNumbers[6], 5191 /* parameters */ &kParameters[549], 5192 /* return matcher indices */ &kMatcherIndices[55], 5193 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5194 /* is_deprecated */ false, 5195 }, 5196 { 5197 /* [1] */ 5198 /* num parameters */ 2, 5199 /* num open types */ 1, 5200 /* num open numbers */ 0, 5201 /* open types */ &kOpenTypes[0], 5202 /* open numbers */ &kOpenNumbers[6], 5203 /* parameters */ &kParameters[503], 5204 /* return matcher indices */ &kMatcherIndices[55], 5205 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5206 /* is_deprecated */ false, 5207 }, 5208 { 5209 /* [2] */ 5210 /* num parameters */ 1, 5211 /* num open types */ 1, 5212 /* num open numbers */ 0, 5213 /* open types */ &kOpenTypes[0], 5214 /* open numbers */ &kOpenNumbers[6], 5215 /* parameters */ &kParameters[548], 5216 /* return matcher indices */ &kMatcherIndices[89], 5217 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5218 /* is_deprecated */ false, 5219 }, 5220 { 5221 /* [3] */ 5222 /* num parameters */ 2, 5223 /* num open types */ 1, 5224 /* num open numbers */ 0, 5225 /* open types */ &kOpenTypes[0], 5226 /* open numbers */ &kOpenNumbers[6], 5227 /* parameters */ &kParameters[507], 5228 /* return matcher indices */ &kMatcherIndices[89], 5229 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5230 /* is_deprecated */ false, 5231 }, 5232 { 5233 /* [4] */ 5234 /* num parameters */ 1, 5235 /* num open types */ 1, 5236 /* num open numbers */ 0, 5237 /* open types */ &kOpenTypes[0], 5238 /* open numbers */ &kOpenNumbers[6], 5239 /* parameters */ &kParameters[547], 5240 /* return matcher indices */ &kMatcherIndices[89], 5241 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5242 /* is_deprecated */ false, 5243 }, 5244 { 5245 /* [5] */ 5246 /* num parameters */ 2, 5247 /* num open types */ 1, 5248 /* num open numbers */ 0, 5249 /* open types */ &kOpenTypes[0], 5250 /* open numbers */ &kOpenNumbers[6], 5251 /* parameters */ &kParameters[511], 5252 /* return matcher indices */ &kMatcherIndices[89], 5253 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5254 /* is_deprecated */ false, 5255 }, 5256 { 5257 /* [6] */ 5258 /* num parameters */ 1, 5259 /* num open types */ 1, 5260 /* num open numbers */ 0, 5261 /* open types */ &kOpenTypes[0], 5262 /* open numbers */ &kOpenNumbers[6], 5263 /* parameters */ &kParameters[546], 5264 /* return matcher indices */ &kMatcherIndices[95], 5265 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5266 /* is_deprecated */ false, 5267 }, 5268 { 5269 /* [7] */ 5270 /* num parameters */ 2, 5271 /* num open types */ 1, 5272 /* num open numbers */ 0, 5273 /* open types */ &kOpenTypes[0], 5274 /* open numbers */ &kOpenNumbers[6], 5275 /* parameters */ &kParameters[515], 5276 /* return matcher indices */ &kMatcherIndices[95], 5277 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5278 /* is_deprecated */ false, 5279 }, 5280 { 5281 /* [8] */ 5282 /* num parameters */ 1, 5283 /* num open types */ 1, 5284 /* num open numbers */ 0, 5285 /* open types */ &kOpenTypes[0], 5286 /* open numbers */ &kOpenNumbers[6], 5287 /* parameters */ &kParameters[545], 5288 /* return matcher indices */ &kMatcherIndices[89], 5289 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5290 /* is_deprecated */ false, 5291 }, 5292 { 5293 /* [9] */ 5294 /* num parameters */ 2, 5295 /* num open types */ 1, 5296 /* num open numbers */ 0, 5297 /* open types */ &kOpenTypes[0], 5298 /* open numbers */ &kOpenNumbers[6], 5299 /* parameters */ &kParameters[519], 5300 /* return matcher indices */ &kMatcherIndices[89], 5301 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5302 /* is_deprecated */ false, 5303 }, 5304 { 5305 /* [10] */ 5306 /* num parameters */ 1, 5307 /* num open types */ 1, 5308 /* num open numbers */ 0, 5309 /* open types */ &kOpenTypes[0], 5310 /* open numbers */ &kOpenNumbers[6], 5311 /* parameters */ &kParameters[533], 5312 /* return matcher indices */ &kMatcherIndices[89], 5313 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5314 /* is_deprecated */ false, 5315 }, 5316 { 5317 /* [11] */ 5318 /* num parameters */ 2, 5319 /* num open types */ 1, 5320 /* num open numbers */ 0, 5321 /* open types */ &kOpenTypes[0], 5322 /* open numbers */ &kOpenNumbers[6], 5323 /* parameters */ &kParameters[523], 5324 /* return matcher indices */ &kMatcherIndices[89], 5325 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5326 /* is_deprecated */ false, 5327 }, 5328 { 5329 /* [12] */ 5330 /* num parameters */ 1, 5331 /* num open types */ 1, 5332 /* num open numbers */ 0, 5333 /* open types */ &kOpenTypes[0], 5334 /* open numbers */ &kOpenNumbers[6], 5335 /* parameters */ &kParameters[544], 5336 /* return matcher indices */ &kMatcherIndices[89], 5337 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5338 /* is_deprecated */ false, 5339 }, 5340 { 5341 /* [13] */ 5342 /* num parameters */ 1, 5343 /* num open types */ 0, 5344 /* num open numbers */ 0, 5345 /* open types */ &kOpenTypes[4], 5346 /* open numbers */ &kOpenNumbers[6], 5347 /* parameters */ &kParameters[537], 5348 /* return matcher indices */ &kMatcherIndices[89], 5349 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5350 /* is_deprecated */ false, 5351 }, 5352 { 5353 /* [14] */ 5354 /* num parameters */ 2, 5355 /* num open types */ 0, 5356 /* num open numbers */ 0, 5357 /* open types */ &kOpenTypes[4], 5358 /* open numbers */ &kOpenNumbers[6], 5359 /* parameters */ &kParameters[529], 5360 /* return matcher indices */ &kMatcherIndices[89], 5361 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5362 /* is_deprecated */ false, 5363 }, 5364 { 5365 /* [15] */ 5366 /* num parameters */ 1, 5367 /* num open types */ 0, 5368 /* num open numbers */ 0, 5369 /* open types */ &kOpenTypes[4], 5370 /* open numbers */ &kOpenNumbers[6], 5371 /* parameters */ &kParameters[535], 5372 /* return matcher indices */ &kMatcherIndices[89], 5373 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5374 /* is_deprecated */ false, 5375 }, 5376 { 5377 /* [16] */ 5378 /* num parameters */ 2, 5379 /* num open types */ 0, 5380 /* num open numbers */ 0, 5381 /* open types */ &kOpenTypes[4], 5382 /* open numbers */ &kOpenNumbers[6], 5383 /* parameters */ &kParameters[497], 5384 /* return matcher indices */ &kMatcherIndices[89], 5385 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5386 /* is_deprecated */ false, 5387 }, 5388 { 5389 /* [17] */ 5390 /* num parameters */ 1, 5391 /* num open types */ 0, 5392 /* num open numbers */ 0, 5393 /* open types */ &kOpenTypes[4], 5394 /* open numbers */ &kOpenNumbers[6], 5395 /* parameters */ &kParameters[534], 5396 /* return matcher indices */ &kMatcherIndices[89], 5397 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5398 /* is_deprecated */ false, 5399 }, 5400 { 5401 /* [18] */ 5402 /* num parameters */ 2, 5403 /* num open types */ 0, 5404 /* num open numbers */ 0, 5405 /* open types */ &kOpenTypes[4], 5406 /* open numbers */ &kOpenNumbers[6], 5407 /* parameters */ &kParameters[461], 5408 /* return matcher indices */ &kMatcherIndices[89], 5409 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5410 /* is_deprecated */ false, 5411 }, 5412 { 5413 /* [19] */ 5414 /* num parameters */ 1, 5415 /* num open types */ 0, 5416 /* num open numbers */ 0, 5417 /* open types */ &kOpenTypes[4], 5418 /* open numbers */ &kOpenNumbers[6], 5419 /* parameters */ &kParameters[536], 5420 /* return matcher indices */ &kMatcherIndices[89], 5421 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5422 /* is_deprecated */ false, 5423 }, 5424 { 5425 /* [20] */ 5426 /* num parameters */ 2, 5427 /* num open types */ 0, 5428 /* num open numbers */ 0, 5429 /* open types */ &kOpenTypes[4], 5430 /* open numbers */ &kOpenNumbers[6], 5431 /* parameters */ &kParameters[527], 5432 /* return matcher indices */ &kMatcherIndices[89], 5433 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5434 /* is_deprecated */ false, 5435 }, 5436 { 5437 /* [21] */ 5438 /* num parameters */ 1, 5439 /* num open types */ 0, 5440 /* num open numbers */ 0, 5441 /* open types */ &kOpenTypes[4], 5442 /* open numbers */ &kOpenNumbers[6], 5443 /* parameters */ &kParameters[538], 5444 /* return matcher indices */ &kMatcherIndices[89], 5445 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5446 /* is_deprecated */ false, 5447 }, 5448 { 5449 /* [22] */ 5450 /* num parameters */ 1, 5451 /* num open types */ 0, 5452 /* num open numbers */ 2, 5453 /* open types */ &kOpenTypes[4], 5454 /* open numbers */ &kOpenNumbers[0], 5455 /* parameters */ &kParameters[539], 5456 /* return matcher indices */ &kMatcherIndices[55], 5457 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5458 /* is_deprecated */ false, 5459 }, 5460 { 5461 /* [23] */ 5462 /* num parameters */ 1, 5463 /* num open types */ 0, 5464 /* num open numbers */ 2, 5465 /* open types */ &kOpenTypes[4], 5466 /* open numbers */ &kOpenNumbers[0], 5467 /* parameters */ &kParameters[540], 5468 /* return matcher indices */ &kMatcherIndices[89], 5469 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5470 /* is_deprecated */ false, 5471 }, 5472 { 5473 /* [24] */ 5474 /* num parameters */ 1, 5475 /* num open types */ 0, 5476 /* num open numbers */ 2, 5477 /* open types */ &kOpenTypes[4], 5478 /* open numbers */ &kOpenNumbers[0], 5479 /* parameters */ &kParameters[541], 5480 /* return matcher indices */ &kMatcherIndices[89], 5481 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5482 /* is_deprecated */ false, 5483 }, 5484 { 5485 /* [25] */ 5486 /* num parameters */ 1, 5487 /* num open types */ 0, 5488 /* num open numbers */ 2, 5489 /* open types */ &kOpenTypes[4], 5490 /* open numbers */ &kOpenNumbers[0], 5491 /* parameters */ &kParameters[542], 5492 /* return matcher indices */ &kMatcherIndices[95], 5493 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5494 /* is_deprecated */ false, 5495 }, 5496 { 5497 /* [26] */ 5498 /* num parameters */ 1, 5499 /* num open types */ 0, 5500 /* num open numbers */ 0, 5501 /* open types */ &kOpenTypes[4], 5502 /* open numbers */ &kOpenNumbers[6], 5503 /* parameters */ &kParameters[543], 5504 /* return matcher indices */ &kMatcherIndices[89], 5505 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5506 /* is_deprecated */ false, 5507 }, 5508 { 5509 /* [27] */ 5510 /* num parameters */ 4, 5511 /* num open types */ 0, 5512 /* num open numbers */ 0, 5513 /* open types */ &kOpenTypes[4], 5514 /* open numbers */ &kOpenNumbers[6], 5515 /* parameters */ &kParameters[270], 5516 /* return matcher indices */ &kMatcherIndices[87], 5517 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5518 /* is_deprecated */ false, 5519 }, 5520 { 5521 /* [28] */ 5522 /* num parameters */ 5, 5523 /* num open types */ 0, 5524 /* num open numbers */ 0, 5525 /* open types */ &kOpenTypes[4], 5526 /* open numbers */ &kOpenNumbers[6], 5527 /* parameters */ &kParameters[138], 5528 /* return matcher indices */ &kMatcherIndices[87], 5529 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5530 /* is_deprecated */ false, 5531 }, 5532 { 5533 /* [29] */ 5534 /* num parameters */ 5, 5535 /* num open types */ 0, 5536 /* num open numbers */ 0, 5537 /* open types */ &kOpenTypes[4], 5538 /* open numbers */ &kOpenNumbers[6], 5539 /* parameters */ &kParameters[143], 5540 /* return matcher indices */ &kMatcherIndices[87], 5541 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5542 /* is_deprecated */ false, 5543 }, 5544 { 5545 /* [30] */ 5546 /* num parameters */ 6, 5547 /* num open types */ 0, 5548 /* num open numbers */ 0, 5549 /* open types */ &kOpenTypes[4], 5550 /* open numbers */ &kOpenNumbers[6], 5551 /* parameters */ &kParameters[19], 5552 /* return matcher indices */ &kMatcherIndices[87], 5553 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5554 /* is_deprecated */ false, 5555 }, 5556 { 5557 /* [31] */ 5558 /* num parameters */ 4, 5559 /* num open types */ 0, 5560 /* num open numbers */ 0, 5561 /* open types */ &kOpenTypes[4], 5562 /* open numbers */ &kOpenNumbers[6], 5563 /* parameters */ &kParameters[246], 5564 /* return matcher indices */ &kMatcherIndices[87], 5565 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5566 /* is_deprecated */ false, 5567 }, 5568 { 5569 /* [32] */ 5570 /* num parameters */ 5, 5571 /* num open types */ 0, 5572 /* num open numbers */ 0, 5573 /* open types */ &kOpenTypes[4], 5574 /* open numbers */ &kOpenNumbers[6], 5575 /* parameters */ &kParameters[183], 5576 /* return matcher indices */ &kMatcherIndices[87], 5577 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5578 /* is_deprecated */ false, 5579 }, 5580 { 5581 /* [33] */ 5582 /* num parameters */ 4, 5583 /* num open types */ 0, 5584 /* num open numbers */ 0, 5585 /* open types */ &kOpenTypes[4], 5586 /* open numbers */ &kOpenNumbers[6], 5587 /* parameters */ &kParameters[234], 5588 /* return matcher indices */ &kMatcherIndices[87], 5589 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5590 /* is_deprecated */ false, 5591 }, 5592 { 5593 /* [34] */ 5594 /* num parameters */ 5, 5595 /* num open types */ 0, 5596 /* num open numbers */ 0, 5597 /* open types */ &kOpenTypes[4], 5598 /* open numbers */ &kOpenNumbers[6], 5599 /* parameters */ &kParameters[193], 5600 /* return matcher indices */ &kMatcherIndices[87], 5601 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5602 /* is_deprecated */ false, 5603 }, 5604 { 5605 /* [35] */ 5606 /* num parameters */ 4, 5607 /* num open types */ 0, 5608 /* num open numbers */ 0, 5609 /* open types */ &kOpenTypes[4], 5610 /* open numbers */ &kOpenNumbers[6], 5611 /* parameters */ &kParameters[226], 5612 /* return matcher indices */ &kMatcherIndices[12], 5613 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5614 /* is_deprecated */ false, 5615 }, 5616 { 5617 /* [36] */ 5618 /* num parameters */ 5, 5619 /* num open types */ 0, 5620 /* num open numbers */ 0, 5621 /* open types */ &kOpenTypes[4], 5622 /* open numbers */ &kOpenNumbers[6], 5623 /* parameters */ &kParameters[208], 5624 /* return matcher indices */ &kMatcherIndices[12], 5625 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5626 /* is_deprecated */ false, 5627 }, 5628 { 5629 /* [37] */ 5630 /* num parameters */ 5, 5631 /* num open types */ 0, 5632 /* num open numbers */ 0, 5633 /* open types */ &kOpenTypes[4], 5634 /* open numbers */ &kOpenNumbers[6], 5635 /* parameters */ &kParameters[73], 5636 /* return matcher indices */ &kMatcherIndices[12], 5637 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5638 /* is_deprecated */ false, 5639 }, 5640 { 5641 /* [38] */ 5642 /* num parameters */ 6, 5643 /* num open types */ 0, 5644 /* num open numbers */ 0, 5645 /* open types */ &kOpenTypes[4], 5646 /* open numbers */ &kOpenNumbers[6], 5647 /* parameters */ &kParameters[43], 5648 /* return matcher indices */ &kMatcherIndices[12], 5649 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5650 /* is_deprecated */ false, 5651 }, 5652 { 5653 /* [39] */ 5654 /* num parameters */ 4, 5655 /* num open types */ 0, 5656 /* num open numbers */ 0, 5657 /* open types */ &kOpenTypes[4], 5658 /* open numbers */ &kOpenNumbers[6], 5659 /* parameters */ &kParameters[222], 5660 /* return matcher indices */ &kMatcherIndices[12], 5661 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5662 /* is_deprecated */ false, 5663 }, 5664 { 5665 /* [40] */ 5666 /* num parameters */ 5, 5667 /* num open types */ 0, 5668 /* num open numbers */ 0, 5669 /* open types */ &kOpenTypes[4], 5670 /* open numbers */ &kOpenNumbers[6], 5671 /* parameters */ &kParameters[203], 5672 /* return matcher indices */ &kMatcherIndices[12], 5673 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5674 /* is_deprecated */ false, 5675 }, 5676 { 5677 /* [41] */ 5678 /* num parameters */ 3, 5679 /* num open types */ 0, 5680 /* num open numbers */ 0, 5681 /* open types */ &kOpenTypes[4], 5682 /* open numbers */ &kOpenNumbers[6], 5683 /* parameters */ &kParameters[357], 5684 /* return matcher indices */ &kMatcherIndices[87], 5685 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5686 /* is_deprecated */ false, 5687 }, 5688 { 5689 /* [42] */ 5690 /* num parameters */ 3, 5691 /* num open types */ 0, 5692 /* num open numbers */ 0, 5693 /* open types */ &kOpenTypes[4], 5694 /* open numbers */ &kOpenNumbers[6], 5695 /* parameters */ &kParameters[414], 5696 /* return matcher indices */ &kMatcherIndices[87], 5697 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5698 /* is_deprecated */ false, 5699 }, 5700 { 5701 /* [43] */ 5702 /* num parameters */ 3, 5703 /* num open types */ 0, 5704 /* num open numbers */ 0, 5705 /* open types */ &kOpenTypes[4], 5706 /* open numbers */ &kOpenNumbers[6], 5707 /* parameters */ &kParameters[417], 5708 /* return matcher indices */ &kMatcherIndices[87], 5709 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5710 /* is_deprecated */ false, 5711 }, 5712 { 5713 /* [44] */ 5714 /* num parameters */ 4, 5715 /* num open types */ 0, 5716 /* num open numbers */ 0, 5717 /* open types */ &kOpenTypes[4], 5718 /* open numbers */ &kOpenNumbers[6], 5719 /* parameters */ &kParameters[338], 5720 /* return matcher indices */ &kMatcherIndices[87], 5721 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5722 /* is_deprecated */ false, 5723 }, 5724 { 5725 /* [45] */ 5726 /* num parameters */ 4, 5727 /* num open types */ 0, 5728 /* num open numbers */ 0, 5729 /* open types */ &kOpenTypes[4], 5730 /* open numbers */ &kOpenNumbers[6], 5731 /* parameters */ &kParameters[286], 5732 /* return matcher indices */ &kMatcherIndices[87], 5733 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5734 /* is_deprecated */ false, 5735 }, 5736 { 5737 /* [46] */ 5738 /* num parameters */ 5, 5739 /* num open types */ 0, 5740 /* num open numbers */ 0, 5741 /* open types */ &kOpenTypes[4], 5742 /* open numbers */ &kOpenNumbers[6], 5743 /* parameters */ &kParameters[118], 5744 /* return matcher indices */ &kMatcherIndices[87], 5745 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5746 /* is_deprecated */ false, 5747 }, 5748 { 5749 /* [47] */ 5750 /* num parameters */ 3, 5751 /* num open types */ 0, 5752 /* num open numbers */ 0, 5753 /* open types */ &kOpenTypes[4], 5754 /* open numbers */ &kOpenNumbers[6], 5755 /* parameters */ &kParameters[450], 5756 /* return matcher indices */ &kMatcherIndices[87], 5757 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5758 /* is_deprecated */ false, 5759 }, 5760 { 5761 /* [48] */ 5762 /* num parameters */ 4, 5763 /* num open types */ 0, 5764 /* num open numbers */ 0, 5765 /* open types */ &kOpenTypes[4], 5766 /* open numbers */ &kOpenNumbers[6], 5767 /* parameters */ &kParameters[278], 5768 /* return matcher indices */ &kMatcherIndices[87], 5769 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5770 /* is_deprecated */ false, 5771 }, 5772 { 5773 /* [49] */ 5774 /* num parameters */ 3, 5775 /* num open types */ 0, 5776 /* num open numbers */ 0, 5777 /* open types */ &kOpenTypes[4], 5778 /* open numbers */ &kOpenNumbers[6], 5779 /* parameters */ &kParameters[444], 5780 /* return matcher indices */ &kMatcherIndices[87], 5781 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5782 /* is_deprecated */ false, 5783 }, 5784 { 5785 /* [50] */ 5786 /* num parameters */ 4, 5787 /* num open types */ 0, 5788 /* num open numbers */ 0, 5789 /* open types */ &kOpenTypes[4], 5790 /* open numbers */ &kOpenNumbers[6], 5791 /* parameters */ &kParameters[274], 5792 /* return matcher indices */ &kMatcherIndices[87], 5793 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5794 /* is_deprecated */ false, 5795 }, 5796 { 5797 /* [51] */ 5798 /* num parameters */ 3, 5799 /* num open types */ 0, 5800 /* num open numbers */ 0, 5801 /* open types */ &kOpenTypes[4], 5802 /* open numbers */ &kOpenNumbers[6], 5803 /* parameters */ &kParameters[429], 5804 /* return matcher indices */ &kMatcherIndices[12], 5805 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5806 /* is_deprecated */ false, 5807 }, 5808 { 5809 /* [52] */ 5810 /* num parameters */ 4, 5811 /* num open types */ 0, 5812 /* num open numbers */ 0, 5813 /* open types */ &kOpenTypes[4], 5814 /* open numbers */ &kOpenNumbers[6], 5815 /* parameters */ &kParameters[266], 5816 /* return matcher indices */ &kMatcherIndices[12], 5817 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5818 /* is_deprecated */ false, 5819 }, 5820 { 5821 /* [53] */ 5822 /* num parameters */ 4, 5823 /* num open types */ 0, 5824 /* num open numbers */ 0, 5825 /* open types */ &kOpenTypes[4], 5826 /* open numbers */ &kOpenNumbers[6], 5827 /* parameters */ &kParameters[262], 5828 /* return matcher indices */ &kMatcherIndices[12], 5829 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5830 /* is_deprecated */ false, 5831 }, 5832 { 5833 /* [54] */ 5834 /* num parameters */ 5, 5835 /* num open types */ 0, 5836 /* num open numbers */ 0, 5837 /* open types */ &kOpenTypes[4], 5838 /* open numbers */ &kOpenNumbers[6], 5839 /* parameters */ &kParameters[148], 5840 /* return matcher indices */ &kMatcherIndices[12], 5841 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5842 /* is_deprecated */ false, 5843 }, 5844 { 5845 /* [55] */ 5846 /* num parameters */ 3, 5847 /* num open types */ 0, 5848 /* num open numbers */ 0, 5849 /* open types */ &kOpenTypes[4], 5850 /* open numbers */ &kOpenNumbers[6], 5851 /* parameters */ &kParameters[405], 5852 /* return matcher indices */ &kMatcherIndices[12], 5853 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5854 /* is_deprecated */ false, 5855 }, 5856 { 5857 /* [56] */ 5858 /* num parameters */ 4, 5859 /* num open types */ 0, 5860 /* num open numbers */ 0, 5861 /* open types */ &kOpenTypes[4], 5862 /* open numbers */ &kOpenNumbers[6], 5863 /* parameters */ &kParameters[258], 5864 /* return matcher indices */ &kMatcherIndices[12], 5865 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 5866 /* is_deprecated */ false, 5867 }, 5868 { 5869 /* [57] */ 5870 /* num parameters */ 4, 5871 /* num open types */ 1, 5872 /* num open numbers */ 0, 5873 /* open types */ &kOpenTypes[0], 5874 /* open numbers */ &kOpenNumbers[6], 5875 /* parameters */ &kParameters[330], 5876 /* return matcher indices */ &kMatcherIndices[115], 5877 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5878 /* is_deprecated */ false, 5879 }, 5880 { 5881 /* [58] */ 5882 /* num parameters */ 5, 5883 /* num open types */ 1, 5884 /* num open numbers */ 0, 5885 /* open types */ &kOpenTypes[0], 5886 /* open numbers */ &kOpenNumbers[6], 5887 /* parameters */ &kParameters[153], 5888 /* return matcher indices */ &kMatcherIndices[115], 5889 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5890 /* is_deprecated */ false, 5891 }, 5892 { 5893 /* [59] */ 5894 /* num parameters */ 5, 5895 /* num open types */ 1, 5896 /* num open numbers */ 0, 5897 /* open types */ &kOpenTypes[0], 5898 /* open numbers */ &kOpenNumbers[6], 5899 /* parameters */ &kParameters[133], 5900 /* return matcher indices */ &kMatcherIndices[115], 5901 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5902 /* is_deprecated */ false, 5903 }, 5904 { 5905 /* [60] */ 5906 /* num parameters */ 6, 5907 /* num open types */ 1, 5908 /* num open numbers */ 0, 5909 /* open types */ &kOpenTypes[0], 5910 /* open numbers */ &kOpenNumbers[6], 5911 /* parameters */ &kParameters[31], 5912 /* return matcher indices */ &kMatcherIndices[115], 5913 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5914 /* is_deprecated */ false, 5915 }, 5916 { 5917 /* [61] */ 5918 /* num parameters */ 4, 5919 /* num open types */ 1, 5920 /* num open numbers */ 0, 5921 /* open types */ &kOpenTypes[0], 5922 /* open numbers */ &kOpenNumbers[6], 5923 /* parameters */ &kParameters[318], 5924 /* return matcher indices */ &kMatcherIndices[115], 5925 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5926 /* is_deprecated */ false, 5927 }, 5928 { 5929 /* [62] */ 5930 /* num parameters */ 5, 5931 /* num open types */ 1, 5932 /* num open numbers */ 0, 5933 /* open types */ &kOpenTypes[0], 5934 /* open numbers */ &kOpenNumbers[6], 5935 /* parameters */ &kParameters[103], 5936 /* return matcher indices */ &kMatcherIndices[115], 5937 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5938 /* is_deprecated */ false, 5939 }, 5940 { 5941 /* [63] */ 5942 /* num parameters */ 3, 5943 /* num open types */ 0, 5944 /* num open numbers */ 0, 5945 /* open types */ &kOpenTypes[4], 5946 /* open numbers */ &kOpenNumbers[6], 5947 /* parameters */ &kParameters[360], 5948 /* return matcher indices */ &kMatcherIndices[87], 5949 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5950 /* is_deprecated */ false, 5951 }, 5952 { 5953 /* [64] */ 5954 /* num parameters */ 4, 5955 /* num open types */ 0, 5956 /* num open numbers */ 0, 5957 /* open types */ &kOpenTypes[4], 5958 /* open numbers */ &kOpenNumbers[6], 5959 /* parameters */ &kParameters[218], 5960 /* return matcher indices */ &kMatcherIndices[87], 5961 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5962 /* is_deprecated */ false, 5963 }, 5964 { 5965 /* [65] */ 5966 /* num parameters */ 4, 5967 /* num open types */ 0, 5968 /* num open numbers */ 0, 5969 /* open types */ &kOpenTypes[4], 5970 /* open numbers */ &kOpenNumbers[6], 5971 /* parameters */ &kParameters[314], 5972 /* return matcher indices */ &kMatcherIndices[87], 5973 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5974 /* is_deprecated */ false, 5975 }, 5976 { 5977 /* [66] */ 5978 /* num parameters */ 5, 5979 /* num open types */ 0, 5980 /* num open numbers */ 0, 5981 /* open types */ &kOpenTypes[4], 5982 /* open numbers */ &kOpenNumbers[6], 5983 /* parameters */ &kParameters[93], 5984 /* return matcher indices */ &kMatcherIndices[87], 5985 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5986 /* is_deprecated */ false, 5987 }, 5988 { 5989 /* [67] */ 5990 /* num parameters */ 3, 5991 /* num open types */ 0, 5992 /* num open numbers */ 0, 5993 /* open types */ &kOpenTypes[4], 5994 /* open numbers */ &kOpenNumbers[6], 5995 /* parameters */ &kParameters[375], 5996 /* return matcher indices */ &kMatcherIndices[87], 5997 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 5998 /* is_deprecated */ false, 5999 }, 6000 { 6001 /* [68] */ 6002 /* num parameters */ 4, 6003 /* num open types */ 0, 6004 /* num open numbers */ 0, 6005 /* open types */ &kOpenTypes[4], 6006 /* open numbers */ &kOpenNumbers[6], 6007 /* parameters */ &kParameters[302], 6008 /* return matcher indices */ &kMatcherIndices[87], 6009 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6010 /* is_deprecated */ false, 6011 }, 6012 { 6013 /* [69] */ 6014 /* num parameters */ 3, 6015 /* num open types */ 0, 6016 /* num open numbers */ 0, 6017 /* open types */ &kOpenTypes[4], 6018 /* open numbers */ &kOpenNumbers[6], 6019 /* parameters */ &kParameters[345], 6020 /* return matcher indices */ nullptr, 6021 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6022 /* is_deprecated */ false, 6023 }, 6024 { 6025 /* [70] */ 6026 /* num parameters */ 3, 6027 /* num open types */ 0, 6028 /* num open numbers */ 0, 6029 /* open types */ &kOpenTypes[4], 6030 /* open numbers */ &kOpenNumbers[6], 6031 /* parameters */ &kParameters[363], 6032 /* return matcher indices */ nullptr, 6033 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6034 /* is_deprecated */ false, 6035 }, 6036 { 6037 /* [71] */ 6038 /* num parameters */ 4, 6039 /* num open types */ 0, 6040 /* num open numbers */ 0, 6041 /* open types */ &kOpenTypes[4], 6042 /* open numbers */ &kOpenNumbers[6], 6043 /* parameters */ &kParameters[242], 6044 /* return matcher indices */ nullptr, 6045 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6046 /* is_deprecated */ false, 6047 }, 6048 { 6049 /* [72] */ 6050 /* num parameters */ 3, 6051 /* num open types */ 0, 6052 /* num open numbers */ 0, 6053 /* open types */ &kOpenTypes[4], 6054 /* open numbers */ &kOpenNumbers[6], 6055 /* parameters */ &kParameters[390], 6056 /* return matcher indices */ nullptr, 6057 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6058 /* is_deprecated */ false, 6059 }, 6060 { 6061 /* [73] */ 6062 /* num parameters */ 3, 6063 /* num open types */ 0, 6064 /* num open numbers */ 0, 6065 /* open types */ &kOpenTypes[4], 6066 /* open numbers */ &kOpenNumbers[6], 6067 /* parameters */ &kParameters[393], 6068 /* return matcher indices */ nullptr, 6069 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6070 /* is_deprecated */ false, 6071 }, 6072 { 6073 /* [74] */ 6074 /* num parameters */ 3, 6075 /* num open types */ 0, 6076 /* num open numbers */ 0, 6077 /* open types */ &kOpenTypes[4], 6078 /* open numbers */ &kOpenNumbers[6], 6079 /* parameters */ &kParameters[369], 6080 /* return matcher indices */ nullptr, 6081 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6082 /* is_deprecated */ false, 6083 }, 6084 { 6085 /* [75] */ 6086 /* num parameters */ 4, 6087 /* num open types */ 0, 6088 /* num open numbers */ 0, 6089 /* open types */ &kOpenTypes[4], 6090 /* open numbers */ &kOpenNumbers[6], 6091 /* parameters */ &kParameters[250], 6092 /* return matcher indices */ nullptr, 6093 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6094 /* is_deprecated */ false, 6095 }, 6096 { 6097 /* [76] */ 6098 /* num parameters */ 3, 6099 /* num open types */ 0, 6100 /* num open numbers */ 0, 6101 /* open types */ &kOpenTypes[4], 6102 /* open numbers */ &kOpenNumbers[6], 6103 /* parameters */ &kParameters[423], 6104 /* return matcher indices */ nullptr, 6105 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6106 /* is_deprecated */ false, 6107 }, 6108 { 6109 /* [77] */ 6110 /* num parameters */ 3, 6111 /* num open types */ 0, 6112 /* num open numbers */ 0, 6113 /* open types */ &kOpenTypes[4], 6114 /* open numbers */ &kOpenNumbers[6], 6115 /* parameters */ &kParameters[432], 6116 /* return matcher indices */ nullptr, 6117 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6118 /* is_deprecated */ false, 6119 }, 6120 { 6121 /* [78] */ 6122 /* num parameters */ 3, 6123 /* num open types */ 0, 6124 /* num open numbers */ 0, 6125 /* open types */ &kOpenTypes[4], 6126 /* open numbers */ &kOpenNumbers[6], 6127 /* parameters */ &kParameters[447], 6128 /* return matcher indices */ nullptr, 6129 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6130 /* is_deprecated */ false, 6131 }, 6132 { 6133 /* [79] */ 6134 /* num parameters */ 4, 6135 /* num open types */ 0, 6136 /* num open numbers */ 0, 6137 /* open types */ &kOpenTypes[4], 6138 /* open numbers */ &kOpenNumbers[6], 6139 /* parameters */ &kParameters[282], 6140 /* return matcher indices */ nullptr, 6141 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6142 /* is_deprecated */ false, 6143 }, 6144 { 6145 /* [80] */ 6146 /* num parameters */ 3, 6147 /* num open types */ 0, 6148 /* num open numbers */ 0, 6149 /* open types */ &kOpenTypes[4], 6150 /* open numbers */ &kOpenNumbers[6], 6151 /* parameters */ &kParameters[453], 6152 /* return matcher indices */ nullptr, 6153 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6154 /* is_deprecated */ false, 6155 }, 6156 { 6157 /* [81] */ 6158 /* num parameters */ 1, 6159 /* num open types */ 1, 6160 /* num open numbers */ 0, 6161 /* open types */ &kOpenTypes[0], 6162 /* open numbers */ &kOpenNumbers[6], 6163 /* parameters */ &kParameters[567], 6164 /* return matcher indices */ &kMatcherIndices[55], 6165 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6166 /* is_deprecated */ false, 6167 }, 6168 { 6169 /* [82] */ 6170 /* num parameters */ 1, 6171 /* num open types */ 1, 6172 /* num open numbers */ 0, 6173 /* open types */ &kOpenTypes[0], 6174 /* open numbers */ &kOpenNumbers[6], 6175 /* parameters */ &kParameters[568], 6176 /* return matcher indices */ &kMatcherIndices[55], 6177 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6178 /* is_deprecated */ false, 6179 }, 6180 { 6181 /* [83] */ 6182 /* num parameters */ 1, 6183 /* num open types */ 1, 6184 /* num open numbers */ 0, 6185 /* open types */ &kOpenTypes[0], 6186 /* open numbers */ &kOpenNumbers[6], 6187 /* parameters */ &kParameters[569], 6188 /* return matcher indices */ &kMatcherIndices[55], 6189 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6190 /* is_deprecated */ false, 6191 }, 6192 { 6193 /* [84] */ 6194 /* num parameters */ 1, 6195 /* num open types */ 1, 6196 /* num open numbers */ 0, 6197 /* open types */ &kOpenTypes[0], 6198 /* open numbers */ &kOpenNumbers[6], 6199 /* parameters */ &kParameters[570], 6200 /* return matcher indices */ &kMatcherIndices[55], 6201 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6202 /* is_deprecated */ false, 6203 }, 6204 { 6205 /* [85] */ 6206 /* num parameters */ 1, 6207 /* num open types */ 1, 6208 /* num open numbers */ 0, 6209 /* open types */ &kOpenTypes[0], 6210 /* open numbers */ &kOpenNumbers[6], 6211 /* parameters */ &kParameters[571], 6212 /* return matcher indices */ &kMatcherIndices[55], 6213 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6214 /* is_deprecated */ false, 6215 }, 6216 { 6217 /* [86] */ 6218 /* num parameters */ 1, 6219 /* num open types */ 1, 6220 /* num open numbers */ 0, 6221 /* open types */ &kOpenTypes[0], 6222 /* open numbers */ &kOpenNumbers[6], 6223 /* parameters */ &kParameters[572], 6224 /* return matcher indices */ &kMatcherIndices[55], 6225 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6226 /* is_deprecated */ false, 6227 }, 6228 { 6229 /* [87] */ 6230 /* num parameters */ 1, 6231 /* num open types */ 0, 6232 /* num open numbers */ 0, 6233 /* open types */ &kOpenTypes[4], 6234 /* open numbers */ &kOpenNumbers[6], 6235 /* parameters */ &kParameters[573], 6236 /* return matcher indices */ &kMatcherIndices[55], 6237 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6238 /* is_deprecated */ false, 6239 }, 6240 { 6241 /* [88] */ 6242 /* num parameters */ 1, 6243 /* num open types */ 0, 6244 /* num open numbers */ 0, 6245 /* open types */ &kOpenTypes[4], 6246 /* open numbers */ &kOpenNumbers[6], 6247 /* parameters */ &kParameters[574], 6248 /* return matcher indices */ &kMatcherIndices[55], 6249 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6250 /* is_deprecated */ false, 6251 }, 6252 { 6253 /* [89] */ 6254 /* num parameters */ 1, 6255 /* num open types */ 0, 6256 /* num open numbers */ 0, 6257 /* open types */ &kOpenTypes[4], 6258 /* open numbers */ &kOpenNumbers[6], 6259 /* parameters */ &kParameters[575], 6260 /* return matcher indices */ &kMatcherIndices[55], 6261 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6262 /* is_deprecated */ false, 6263 }, 6264 { 6265 /* [90] */ 6266 /* num parameters */ 1, 6267 /* num open types */ 0, 6268 /* num open numbers */ 0, 6269 /* open types */ &kOpenTypes[4], 6270 /* open numbers */ &kOpenNumbers[6], 6271 /* parameters */ &kParameters[576], 6272 /* return matcher indices */ &kMatcherIndices[55], 6273 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6274 /* is_deprecated */ false, 6275 }, 6276 { 6277 /* [91] */ 6278 /* num parameters */ 3, 6279 /* num open types */ 1, 6280 /* num open numbers */ 0, 6281 /* open types */ &kOpenTypes[0], 6282 /* open numbers */ &kOpenNumbers[6], 6283 /* parameters */ &kParameters[456], 6284 /* return matcher indices */ &kMatcherIndices[115], 6285 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6286 /* is_deprecated */ false, 6287 }, 6288 { 6289 /* [92] */ 6290 /* num parameters */ 3, 6291 /* num open types */ 1, 6292 /* num open numbers */ 0, 6293 /* open types */ &kOpenTypes[0], 6294 /* open numbers */ &kOpenNumbers[6], 6295 /* parameters */ &kParameters[411], 6296 /* return matcher indices */ &kMatcherIndices[115], 6297 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6298 /* is_deprecated */ false, 6299 }, 6300 { 6301 /* [93] */ 6302 /* num parameters */ 4, 6303 /* num open types */ 1, 6304 /* num open numbers */ 0, 6305 /* open types */ &kOpenTypes[0], 6306 /* open numbers */ &kOpenNumbers[6], 6307 /* parameters */ &kParameters[294], 6308 /* return matcher indices */ &kMatcherIndices[115], 6309 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6310 /* is_deprecated */ false, 6311 }, 6312 { 6313 /* [94] */ 6314 /* num parameters */ 3, 6315 /* num open types */ 1, 6316 /* num open numbers */ 0, 6317 /* open types */ &kOpenTypes[0], 6318 /* open numbers */ &kOpenNumbers[6], 6319 /* parameters */ &kParameters[399], 6320 /* return matcher indices */ &kMatcherIndices[115], 6321 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6322 /* is_deprecated */ false, 6323 }, 6324 { 6325 /* [95] */ 6326 /* num parameters */ 3, 6327 /* num open types */ 1, 6328 /* num open numbers */ 0, 6329 /* open types */ &kOpenTypes[0], 6330 /* open numbers */ &kOpenNumbers[6], 6331 /* parameters */ &kParameters[396], 6332 /* return matcher indices */ &kMatcherIndices[115], 6333 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6334 /* is_deprecated */ false, 6335 }, 6336 { 6337 /* [96] */ 6338 /* num parameters */ 3, 6339 /* num open types */ 0, 6340 /* num open numbers */ 0, 6341 /* open types */ &kOpenTypes[4], 6342 /* open numbers */ &kOpenNumbers[6], 6343 /* parameters */ &kParameters[372], 6344 /* return matcher indices */ &kMatcherIndices[12], 6345 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6346 /* is_deprecated */ false, 6347 }, 6348 { 6349 /* [97] */ 6350 /* num parameters */ 4, 6351 /* num open types */ 0, 6352 /* num open numbers */ 0, 6353 /* open types */ &kOpenTypes[4], 6354 /* open numbers */ &kOpenNumbers[6], 6355 /* parameters */ &kParameters[306], 6356 /* return matcher indices */ &kMatcherIndices[12], 6357 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6358 /* is_deprecated */ false, 6359 }, 6360 { 6361 /* [98] */ 6362 /* num parameters */ 3, 6363 /* num open types */ 0, 6364 /* num open numbers */ 0, 6365 /* open types */ &kOpenTypes[4], 6366 /* open numbers */ &kOpenNumbers[6], 6367 /* parameters */ &kParameters[366], 6368 /* return matcher indices */ &kMatcherIndices[12], 6369 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6370 /* is_deprecated */ false, 6371 }, 6372 { 6373 /* [99] */ 6374 /* num parameters */ 2, 6375 /* num open types */ 0, 6376 /* num open numbers */ 0, 6377 /* open types */ &kOpenTypes[4], 6378 /* open numbers */ &kOpenNumbers[6], 6379 /* parameters */ &kParameters[495], 6380 /* return matcher indices */ &kMatcherIndices[87], 6381 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6382 /* is_deprecated */ false, 6383 }, 6384 { 6385 /* [100] */ 6386 /* num parameters */ 5, 6387 /* num open types */ 0, 6388 /* num open numbers */ 0, 6389 /* open types */ &kOpenTypes[4], 6390 /* open numbers */ &kOpenNumbers[6], 6391 /* parameters */ &kParameters[78], 6392 /* return matcher indices */ &kMatcherIndices[87], 6393 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6394 /* is_deprecated */ false, 6395 }, 6396 { 6397 /* [101] */ 6398 /* num parameters */ 6, 6399 /* num open types */ 0, 6400 /* num open numbers */ 0, 6401 /* open types */ &kOpenTypes[4], 6402 /* open numbers */ &kOpenNumbers[6], 6403 /* parameters */ &kParameters[7], 6404 /* return matcher indices */ &kMatcherIndices[87], 6405 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6406 /* is_deprecated */ false, 6407 }, 6408 { 6409 /* [102] */ 6410 /* num parameters */ 6, 6411 /* num open types */ 0, 6412 /* num open numbers */ 0, 6413 /* open types */ &kOpenTypes[4], 6414 /* open numbers */ &kOpenNumbers[6], 6415 /* parameters */ &kParameters[67], 6416 /* return matcher indices */ &kMatcherIndices[87], 6417 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6418 /* is_deprecated */ false, 6419 }, 6420 { 6421 /* [103] */ 6422 /* num parameters */ 7, 6423 /* num open types */ 0, 6424 /* num open numbers */ 0, 6425 /* open types */ &kOpenTypes[4], 6426 /* open numbers */ &kOpenNumbers[6], 6427 /* parameters */ &kParameters[0], 6428 /* return matcher indices */ &kMatcherIndices[87], 6429 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6430 /* is_deprecated */ false, 6431 }, 6432 { 6433 /* [104] */ 6434 /* num parameters */ 5, 6435 /* num open types */ 0, 6436 /* num open numbers */ 0, 6437 /* open types */ &kOpenTypes[4], 6438 /* open numbers */ &kOpenNumbers[6], 6439 /* parameters */ &kParameters[113], 6440 /* return matcher indices */ &kMatcherIndices[87], 6441 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6442 /* is_deprecated */ false, 6443 }, 6444 { 6445 /* [105] */ 6446 /* num parameters */ 6, 6447 /* num open types */ 0, 6448 /* num open numbers */ 0, 6449 /* open types */ &kOpenTypes[4], 6450 /* open numbers */ &kOpenNumbers[6], 6451 /* parameters */ &kParameters[37], 6452 /* return matcher indices */ &kMatcherIndices[87], 6453 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6454 /* is_deprecated */ false, 6455 }, 6456 { 6457 /* [106] */ 6458 /* num parameters */ 5, 6459 /* num open types */ 0, 6460 /* num open numbers */ 0, 6461 /* open types */ &kOpenTypes[4], 6462 /* open numbers */ &kOpenNumbers[6], 6463 /* parameters */ &kParameters[128], 6464 /* return matcher indices */ &kMatcherIndices[87], 6465 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6466 /* is_deprecated */ false, 6467 }, 6468 { 6469 /* [107] */ 6470 /* num parameters */ 6, 6471 /* num open types */ 0, 6472 /* num open numbers */ 0, 6473 /* open types */ &kOpenTypes[4], 6474 /* open numbers */ &kOpenNumbers[6], 6475 /* parameters */ &kParameters[25], 6476 /* return matcher indices */ &kMatcherIndices[87], 6477 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6478 /* is_deprecated */ false, 6479 }, 6480 { 6481 /* [108] */ 6482 /* num parameters */ 4, 6483 /* num open types */ 0, 6484 /* num open numbers */ 0, 6485 /* open types */ &kOpenTypes[4], 6486 /* open numbers */ &kOpenNumbers[6], 6487 /* parameters */ &kParameters[254], 6488 /* return matcher indices */ &kMatcherIndices[87], 6489 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6490 /* is_deprecated */ false, 6491 }, 6492 { 6493 /* [109] */ 6494 /* num parameters */ 5, 6495 /* num open types */ 0, 6496 /* num open numbers */ 0, 6497 /* open types */ &kOpenTypes[4], 6498 /* open numbers */ &kOpenNumbers[6], 6499 /* parameters */ &kParameters[168], 6500 /* return matcher indices */ &kMatcherIndices[87], 6501 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6502 /* is_deprecated */ false, 6503 }, 6504 { 6505 /* [110] */ 6506 /* num parameters */ 5, 6507 /* num open types */ 0, 6508 /* num open numbers */ 0, 6509 /* open types */ &kOpenTypes[4], 6510 /* open numbers */ &kOpenNumbers[6], 6511 /* parameters */ &kParameters[173], 6512 /* return matcher indices */ &kMatcherIndices[87], 6513 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6514 /* is_deprecated */ false, 6515 }, 6516 { 6517 /* [111] */ 6518 /* num parameters */ 6, 6519 /* num open types */ 0, 6520 /* num open numbers */ 0, 6521 /* open types */ &kOpenTypes[4], 6522 /* open numbers */ &kOpenNumbers[6], 6523 /* parameters */ &kParameters[13], 6524 /* return matcher indices */ &kMatcherIndices[87], 6525 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6526 /* is_deprecated */ false, 6527 }, 6528 { 6529 /* [112] */ 6530 /* num parameters */ 4, 6531 /* num open types */ 0, 6532 /* num open numbers */ 0, 6533 /* open types */ &kOpenTypes[4], 6534 /* open numbers */ &kOpenNumbers[6], 6535 /* parameters */ &kParameters[322], 6536 /* return matcher indices */ &kMatcherIndices[87], 6537 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6538 /* is_deprecated */ false, 6539 }, 6540 { 6541 /* [113] */ 6542 /* num parameters */ 5, 6543 /* num open types */ 0, 6544 /* num open numbers */ 0, 6545 /* open types */ &kOpenTypes[4], 6546 /* open numbers */ &kOpenNumbers[6], 6547 /* parameters */ &kParameters[213], 6548 /* return matcher indices */ &kMatcherIndices[87], 6549 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6550 /* is_deprecated */ false, 6551 }, 6552 { 6553 /* [114] */ 6554 /* num parameters */ 4, 6555 /* num open types */ 0, 6556 /* num open numbers */ 0, 6557 /* open types */ &kOpenTypes[4], 6558 /* open numbers */ &kOpenNumbers[6], 6559 /* parameters */ &kParameters[230], 6560 /* return matcher indices */ &kMatcherIndices[87], 6561 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6562 /* is_deprecated */ false, 6563 }, 6564 { 6565 /* [115] */ 6566 /* num parameters */ 5, 6567 /* num open types */ 0, 6568 /* num open numbers */ 0, 6569 /* open types */ &kOpenTypes[4], 6570 /* open numbers */ &kOpenNumbers[6], 6571 /* parameters */ &kParameters[198], 6572 /* return matcher indices */ &kMatcherIndices[87], 6573 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6574 /* is_deprecated */ false, 6575 }, 6576 { 6577 /* [116] */ 6578 /* num parameters */ 4, 6579 /* num open types */ 0, 6580 /* num open numbers */ 0, 6581 /* open types */ &kOpenTypes[4], 6582 /* open numbers */ &kOpenNumbers[6], 6583 /* parameters */ &kParameters[298], 6584 /* return matcher indices */ &kMatcherIndices[87], 6585 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6586 /* is_deprecated */ false, 6587 }, 6588 { 6589 /* [117] */ 6590 /* num parameters */ 5, 6591 /* num open types */ 0, 6592 /* num open numbers */ 0, 6593 /* open types */ &kOpenTypes[4], 6594 /* open numbers */ &kOpenNumbers[6], 6595 /* parameters */ &kParameters[83], 6596 /* return matcher indices */ &kMatcherIndices[87], 6597 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6598 /* is_deprecated */ false, 6599 }, 6600 { 6601 /* [118] */ 6602 /* num parameters */ 5, 6603 /* num open types */ 0, 6604 /* num open numbers */ 0, 6605 /* open types */ &kOpenTypes[4], 6606 /* open numbers */ &kOpenNumbers[6], 6607 /* parameters */ &kParameters[88], 6608 /* return matcher indices */ &kMatcherIndices[87], 6609 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6610 /* is_deprecated */ false, 6611 }, 6612 { 6613 /* [119] */ 6614 /* num parameters */ 6, 6615 /* num open types */ 0, 6616 /* num open numbers */ 0, 6617 /* open types */ &kOpenTypes[4], 6618 /* open numbers */ &kOpenNumbers[6], 6619 /* parameters */ &kParameters[61], 6620 /* return matcher indices */ &kMatcherIndices[87], 6621 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6622 /* is_deprecated */ false, 6623 }, 6624 { 6625 /* [120] */ 6626 /* num parameters */ 4, 6627 /* num open types */ 0, 6628 /* num open numbers */ 0, 6629 /* open types */ &kOpenTypes[4], 6630 /* open numbers */ &kOpenNumbers[6], 6631 /* parameters */ &kParameters[290], 6632 /* return matcher indices */ &kMatcherIndices[87], 6633 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6634 /* is_deprecated */ false, 6635 }, 6636 { 6637 /* [121] */ 6638 /* num parameters */ 5, 6639 /* num open types */ 0, 6640 /* num open numbers */ 0, 6641 /* open types */ &kOpenTypes[4], 6642 /* open numbers */ &kOpenNumbers[6], 6643 /* parameters */ &kParameters[108], 6644 /* return matcher indices */ &kMatcherIndices[87], 6645 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6646 /* is_deprecated */ false, 6647 }, 6648 { 6649 /* [122] */ 6650 /* num parameters */ 4, 6651 /* num open types */ 0, 6652 /* num open numbers */ 0, 6653 /* open types */ &kOpenTypes[4], 6654 /* open numbers */ &kOpenNumbers[6], 6655 /* parameters */ &kParameters[238], 6656 /* return matcher indices */ &kMatcherIndices[12], 6657 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6658 /* is_deprecated */ false, 6659 }, 6660 { 6661 /* [123] */ 6662 /* num parameters */ 5, 6663 /* num open types */ 0, 6664 /* num open numbers */ 0, 6665 /* open types */ &kOpenTypes[4], 6666 /* open numbers */ &kOpenNumbers[6], 6667 /* parameters */ &kParameters[163], 6668 /* return matcher indices */ &kMatcherIndices[12], 6669 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6670 /* is_deprecated */ false, 6671 }, 6672 { 6673 /* [124] */ 6674 /* num parameters */ 5, 6675 /* num open types */ 0, 6676 /* num open numbers */ 0, 6677 /* open types */ &kOpenTypes[4], 6678 /* open numbers */ &kOpenNumbers[6], 6679 /* parameters */ &kParameters[158], 6680 /* return matcher indices */ &kMatcherIndices[12], 6681 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6682 /* is_deprecated */ false, 6683 }, 6684 { 6685 /* [125] */ 6686 /* num parameters */ 6, 6687 /* num open types */ 0, 6688 /* num open numbers */ 0, 6689 /* open types */ &kOpenTypes[4], 6690 /* open numbers */ &kOpenNumbers[6], 6691 /* parameters */ &kParameters[49], 6692 /* return matcher indices */ &kMatcherIndices[12], 6693 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6694 /* is_deprecated */ false, 6695 }, 6696 { 6697 /* [126] */ 6698 /* num parameters */ 4, 6699 /* num open types */ 0, 6700 /* num open numbers */ 0, 6701 /* open types */ &kOpenTypes[4], 6702 /* open numbers */ &kOpenNumbers[6], 6703 /* parameters */ &kParameters[334], 6704 /* return matcher indices */ &kMatcherIndices[12], 6705 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6706 /* is_deprecated */ false, 6707 }, 6708 { 6709 /* [127] */ 6710 /* num parameters */ 5, 6711 /* num open types */ 0, 6712 /* num open numbers */ 0, 6713 /* open types */ &kOpenTypes[4], 6714 /* open numbers */ &kOpenNumbers[6], 6715 /* parameters */ &kParameters[188], 6716 /* return matcher indices */ &kMatcherIndices[12], 6717 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6718 /* is_deprecated */ false, 6719 }, 6720 { 6721 /* [128] */ 6722 /* num parameters */ 4, 6723 /* num open types */ 0, 6724 /* num open numbers */ 0, 6725 /* open types */ &kOpenTypes[4], 6726 /* open numbers */ &kOpenNumbers[6], 6727 /* parameters */ &kParameters[326], 6728 /* return matcher indices */ &kMatcherIndices[12], 6729 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6730 /* is_deprecated */ false, 6731 }, 6732 { 6733 /* [129] */ 6734 /* num parameters */ 5, 6735 /* num open types */ 0, 6736 /* num open numbers */ 0, 6737 /* open types */ &kOpenTypes[4], 6738 /* open numbers */ &kOpenNumbers[6], 6739 /* parameters */ &kParameters[178], 6740 /* return matcher indices */ &kMatcherIndices[12], 6741 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6742 /* is_deprecated */ false, 6743 }, 6744 { 6745 /* [130] */ 6746 /* num parameters */ 5, 6747 /* num open types */ 0, 6748 /* num open numbers */ 0, 6749 /* open types */ &kOpenTypes[4], 6750 /* open numbers */ &kOpenNumbers[6], 6751 /* parameters */ &kParameters[123], 6752 /* return matcher indices */ &kMatcherIndices[12], 6753 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6754 /* is_deprecated */ false, 6755 }, 6756 { 6757 /* [131] */ 6758 /* num parameters */ 6, 6759 /* num open types */ 0, 6760 /* num open numbers */ 0, 6761 /* open types */ &kOpenTypes[4], 6762 /* open numbers */ &kOpenNumbers[6], 6763 /* parameters */ &kParameters[55], 6764 /* return matcher indices */ &kMatcherIndices[12], 6765 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6766 /* is_deprecated */ false, 6767 }, 6768 { 6769 /* [132] */ 6770 /* num parameters */ 4, 6771 /* num open types */ 0, 6772 /* num open numbers */ 0, 6773 /* open types */ &kOpenTypes[4], 6774 /* open numbers */ &kOpenNumbers[6], 6775 /* parameters */ &kParameters[310], 6776 /* return matcher indices */ &kMatcherIndices[12], 6777 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6778 /* is_deprecated */ false, 6779 }, 6780 { 6781 /* [133] */ 6782 /* num parameters */ 5, 6783 /* num open types */ 0, 6784 /* num open numbers */ 0, 6785 /* open types */ &kOpenTypes[4], 6786 /* open numbers */ &kOpenNumbers[6], 6787 /* parameters */ &kParameters[98], 6788 /* return matcher indices */ &kMatcherIndices[12], 6789 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6790 /* is_deprecated */ false, 6791 }, 6792 { 6793 /* [134] */ 6794 /* num parameters */ 1, 6795 /* num open types */ 1, 6796 /* num open numbers */ 0, 6797 /* open types */ &kOpenTypes[0], 6798 /* open numbers */ &kOpenNumbers[6], 6799 /* parameters */ &kParameters[562], 6800 /* return matcher indices */ &kMatcherIndices[55], 6801 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6802 /* is_deprecated */ false, 6803 }, 6804 { 6805 /* [135] */ 6806 /* num parameters */ 1, 6807 /* num open types */ 1, 6808 /* num open numbers */ 0, 6809 /* open types */ &kOpenTypes[0], 6810 /* open numbers */ &kOpenNumbers[6], 6811 /* parameters */ &kParameters[563], 6812 /* return matcher indices */ &kMatcherIndices[55], 6813 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6814 /* is_deprecated */ false, 6815 }, 6816 { 6817 /* [136] */ 6818 /* num parameters */ 1, 6819 /* num open types */ 0, 6820 /* num open numbers */ 0, 6821 /* open types */ &kOpenTypes[4], 6822 /* open numbers */ &kOpenNumbers[6], 6823 /* parameters */ &kParameters[564], 6824 /* return matcher indices */ &kMatcherIndices[55], 6825 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6826 /* is_deprecated */ false, 6827 }, 6828 { 6829 /* [137] */ 6830 /* num parameters */ 1, 6831 /* num open types */ 0, 6832 /* num open numbers */ 0, 6833 /* open types */ &kOpenTypes[4], 6834 /* open numbers */ &kOpenNumbers[6], 6835 /* parameters */ &kParameters[565], 6836 /* return matcher indices */ &kMatcherIndices[55], 6837 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6838 /* is_deprecated */ false, 6839 }, 6840 { 6841 /* [138] */ 6842 /* num parameters */ 1, 6843 /* num open types */ 0, 6844 /* num open numbers */ 2, 6845 /* open types */ &kOpenTypes[4], 6846 /* open numbers */ &kOpenNumbers[0], 6847 /* parameters */ &kParameters[566], 6848 /* return matcher indices */ &kMatcherIndices[55], 6849 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6850 /* is_deprecated */ false, 6851 }, 6852 { 6853 /* [139] */ 6854 /* num parameters */ 3, 6855 /* num open types */ 0, 6856 /* num open numbers */ 0, 6857 /* open types */ &kOpenTypes[4], 6858 /* open numbers */ &kOpenNumbers[6], 6859 /* parameters */ &kParameters[378], 6860 /* return matcher indices */ &kMatcherIndices[12], 6861 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6862 /* is_deprecated */ false, 6863 }, 6864 { 6865 /* [140] */ 6866 /* num parameters */ 3, 6867 /* num open types */ 0, 6868 /* num open numbers */ 1, 6869 /* open types */ &kOpenTypes[4], 6870 /* open numbers */ &kOpenNumbers[3], 6871 /* parameters */ &kParameters[381], 6872 /* return matcher indices */ &kMatcherIndices[21], 6873 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6874 /* is_deprecated */ false, 6875 }, 6876 { 6877 /* [141] */ 6878 /* num parameters */ 3, 6879 /* num open types */ 0, 6880 /* num open numbers */ 1, 6881 /* open types */ &kOpenTypes[4], 6882 /* open numbers */ &kOpenNumbers[3], 6883 /* parameters */ &kParameters[384], 6884 /* return matcher indices */ &kMatcherIndices[21], 6885 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6886 /* is_deprecated */ false, 6887 }, 6888 { 6889 /* [142] */ 6890 /* num parameters */ 3, 6891 /* num open types */ 1, 6892 /* num open numbers */ 0, 6893 /* open types */ &kOpenTypes[3], 6894 /* open numbers */ &kOpenNumbers[6], 6895 /* parameters */ &kParameters[435], 6896 /* return matcher indices */ &kMatcherIndices[1], 6897 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6898 /* is_deprecated */ false, 6899 }, 6900 { 6901 /* [143] */ 6902 /* num parameters */ 3, 6903 /* num open types */ 1, 6904 /* num open numbers */ 1, 6905 /* open types */ &kOpenTypes[3], 6906 /* open numbers */ &kOpenNumbers[3], 6907 /* parameters */ &kParameters[438], 6908 /* return matcher indices */ &kMatcherIndices[30], 6909 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6910 /* is_deprecated */ false, 6911 }, 6912 { 6913 /* [144] */ 6914 /* num parameters */ 3, 6915 /* num open types */ 1, 6916 /* num open numbers */ 1, 6917 /* open types */ &kOpenTypes[3], 6918 /* open numbers */ &kOpenNumbers[3], 6919 /* parameters */ &kParameters[441], 6920 /* return matcher indices */ &kMatcherIndices[30], 6921 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6922 /* is_deprecated */ false, 6923 }, 6924 { 6925 /* [145] */ 6926 /* num parameters */ 1, 6927 /* num open types */ 0, 6928 /* num open numbers */ 0, 6929 /* open types */ &kOpenTypes[4], 6930 /* open numbers */ &kOpenNumbers[6], 6931 /* parameters */ &kParameters[652], 6932 /* return matcher indices */ &kMatcherIndices[12], 6933 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6934 /* is_deprecated */ false, 6935 }, 6936 { 6937 /* [146] */ 6938 /* num parameters */ 1, 6939 /* num open types */ 0, 6940 /* num open numbers */ 1, 6941 /* open types */ &kOpenTypes[4], 6942 /* open numbers */ &kOpenNumbers[3], 6943 /* parameters */ &kParameters[651], 6944 /* return matcher indices */ &kMatcherIndices[21], 6945 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6946 /* is_deprecated */ false, 6947 }, 6948 { 6949 /* [147] */ 6950 /* num parameters */ 1, 6951 /* num open types */ 0, 6952 /* num open numbers */ 0, 6953 /* open types */ &kOpenTypes[4], 6954 /* open numbers */ &kOpenNumbers[6], 6955 /* parameters */ &kParameters[561], 6956 /* return matcher indices */ &kMatcherIndices[12], 6957 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6958 /* is_deprecated */ false, 6959 }, 6960 { 6961 /* [148] */ 6962 /* num parameters */ 1, 6963 /* num open types */ 0, 6964 /* num open numbers */ 1, 6965 /* open types */ &kOpenTypes[4], 6966 /* open numbers */ &kOpenNumbers[3], 6967 /* parameters */ &kParameters[560], 6968 /* return matcher indices */ &kMatcherIndices[21], 6969 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 6970 /* is_deprecated */ false, 6971 }, 6972 { 6973 /* [149] */ 6974 /* num parameters */ 1, 6975 /* num open types */ 0, 6976 /* num open numbers */ 0, 6977 /* open types */ &kOpenTypes[4], 6978 /* open numbers */ &kOpenNumbers[6], 6979 /* parameters */ &kParameters[643], 6980 /* return matcher indices */ &kMatcherIndices[12], 6981 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6982 /* is_deprecated */ false, 6983 }, 6984 { 6985 /* [150] */ 6986 /* num parameters */ 1, 6987 /* num open types */ 0, 6988 /* num open numbers */ 1, 6989 /* open types */ &kOpenTypes[4], 6990 /* open numbers */ &kOpenNumbers[3], 6991 /* parameters */ &kParameters[642], 6992 /* return matcher indices */ &kMatcherIndices[21], 6993 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 6994 /* is_deprecated */ false, 6995 }, 6996 { 6997 /* [151] */ 6998 /* num parameters */ 1, 6999 /* num open types */ 0, 7000 /* num open numbers */ 0, 7001 /* open types */ &kOpenTypes[4], 7002 /* open numbers */ &kOpenNumbers[6], 7003 /* parameters */ &kParameters[641], 7004 /* return matcher indices */ &kMatcherIndices[12], 7005 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7006 /* is_deprecated */ false, 7007 }, 7008 { 7009 /* [152] */ 7010 /* num parameters */ 1, 7011 /* num open types */ 0, 7012 /* num open numbers */ 1, 7013 /* open types */ &kOpenTypes[4], 7014 /* open numbers */ &kOpenNumbers[3], 7015 /* parameters */ &kParameters[640], 7016 /* return matcher indices */ &kMatcherIndices[21], 7017 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7018 /* is_deprecated */ false, 7019 }, 7020 { 7021 /* [153] */ 7022 /* num parameters */ 1, 7023 /* num open types */ 0, 7024 /* num open numbers */ 0, 7025 /* open types */ &kOpenTypes[4], 7026 /* open numbers */ &kOpenNumbers[6], 7027 /* parameters */ &kParameters[639], 7028 /* return matcher indices */ &kMatcherIndices[12], 7029 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7030 /* is_deprecated */ false, 7031 }, 7032 { 7033 /* [154] */ 7034 /* num parameters */ 1, 7035 /* num open types */ 0, 7036 /* num open numbers */ 1, 7037 /* open types */ &kOpenTypes[4], 7038 /* open numbers */ &kOpenNumbers[3], 7039 /* parameters */ &kParameters[638], 7040 /* return matcher indices */ &kMatcherIndices[21], 7041 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7042 /* is_deprecated */ false, 7043 }, 7044 { 7045 /* [155] */ 7046 /* num parameters */ 1, 7047 /* num open types */ 0, 7048 /* num open numbers */ 0, 7049 /* open types */ &kOpenTypes[4], 7050 /* open numbers */ &kOpenNumbers[6], 7051 /* parameters */ &kParameters[637], 7052 /* return matcher indices */ &kMatcherIndices[12], 7053 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7054 /* is_deprecated */ false, 7055 }, 7056 { 7057 /* [156] */ 7058 /* num parameters */ 1, 7059 /* num open types */ 0, 7060 /* num open numbers */ 1, 7061 /* open types */ &kOpenTypes[4], 7062 /* open numbers */ &kOpenNumbers[3], 7063 /* parameters */ &kParameters[636], 7064 /* return matcher indices */ &kMatcherIndices[21], 7065 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7066 /* is_deprecated */ false, 7067 }, 7068 { 7069 /* [157] */ 7070 /* num parameters */ 1, 7071 /* num open types */ 0, 7072 /* num open numbers */ 0, 7073 /* open types */ &kOpenTypes[4], 7074 /* open numbers */ &kOpenNumbers[6], 7075 /* parameters */ &kParameters[635], 7076 /* return matcher indices */ &kMatcherIndices[12], 7077 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7078 /* is_deprecated */ false, 7079 }, 7080 { 7081 /* [158] */ 7082 /* num parameters */ 1, 7083 /* num open types */ 0, 7084 /* num open numbers */ 1, 7085 /* open types */ &kOpenTypes[4], 7086 /* open numbers */ &kOpenNumbers[3], 7087 /* parameters */ &kParameters[634], 7088 /* return matcher indices */ &kMatcherIndices[21], 7089 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7090 /* is_deprecated */ false, 7091 }, 7092 { 7093 /* [159] */ 7094 /* num parameters */ 1, 7095 /* num open types */ 0, 7096 /* num open numbers */ 0, 7097 /* open types */ &kOpenTypes[4], 7098 /* open numbers */ &kOpenNumbers[6], 7099 /* parameters */ &kParameters[633], 7100 /* return matcher indices */ &kMatcherIndices[12], 7101 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7102 /* is_deprecated */ false, 7103 }, 7104 { 7105 /* [160] */ 7106 /* num parameters */ 1, 7107 /* num open types */ 0, 7108 /* num open numbers */ 1, 7109 /* open types */ &kOpenTypes[4], 7110 /* open numbers */ &kOpenNumbers[3], 7111 /* parameters */ &kParameters[632], 7112 /* return matcher indices */ &kMatcherIndices[21], 7113 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7114 /* is_deprecated */ false, 7115 }, 7116 { 7117 /* [161] */ 7118 /* num parameters */ 1, 7119 /* num open types */ 0, 7120 /* num open numbers */ 0, 7121 /* open types */ &kOpenTypes[4], 7122 /* open numbers */ &kOpenNumbers[6], 7123 /* parameters */ &kParameters[631], 7124 /* return matcher indices */ &kMatcherIndices[12], 7125 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7126 /* is_deprecated */ false, 7127 }, 7128 { 7129 /* [162] */ 7130 /* num parameters */ 1, 7131 /* num open types */ 0, 7132 /* num open numbers */ 1, 7133 /* open types */ &kOpenTypes[4], 7134 /* open numbers */ &kOpenNumbers[3], 7135 /* parameters */ &kParameters[630], 7136 /* return matcher indices */ &kMatcherIndices[21], 7137 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7138 /* is_deprecated */ false, 7139 }, 7140 { 7141 /* [163] */ 7142 /* num parameters */ 1, 7143 /* num open types */ 0, 7144 /* num open numbers */ 0, 7145 /* open types */ &kOpenTypes[4], 7146 /* open numbers */ &kOpenNumbers[6], 7147 /* parameters */ &kParameters[629], 7148 /* return matcher indices */ &kMatcherIndices[12], 7149 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7150 /* is_deprecated */ false, 7151 }, 7152 { 7153 /* [164] */ 7154 /* num parameters */ 1, 7155 /* num open types */ 0, 7156 /* num open numbers */ 1, 7157 /* open types */ &kOpenTypes[4], 7158 /* open numbers */ &kOpenNumbers[3], 7159 /* parameters */ &kParameters[628], 7160 /* return matcher indices */ &kMatcherIndices[21], 7161 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7162 /* is_deprecated */ false, 7163 }, 7164 { 7165 /* [165] */ 7166 /* num parameters */ 2, 7167 /* num open types */ 0, 7168 /* num open numbers */ 0, 7169 /* open types */ &kOpenTypes[4], 7170 /* open numbers */ &kOpenNumbers[6], 7171 /* parameters */ &kParameters[477], 7172 /* return matcher indices */ &kMatcherIndices[12], 7173 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7174 /* is_deprecated */ false, 7175 }, 7176 { 7177 /* [166] */ 7178 /* num parameters */ 2, 7179 /* num open types */ 0, 7180 /* num open numbers */ 1, 7181 /* open types */ &kOpenTypes[4], 7182 /* open numbers */ &kOpenNumbers[3], 7183 /* parameters */ &kParameters[479], 7184 /* return matcher indices */ &kMatcherIndices[12], 7185 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7186 /* is_deprecated */ false, 7187 }, 7188 { 7189 /* [167] */ 7190 /* num parameters */ 1, 7191 /* num open types */ 0, 7192 /* num open numbers */ 0, 7193 /* open types */ &kOpenTypes[4], 7194 /* open numbers */ &kOpenNumbers[6], 7195 /* parameters */ &kParameters[627], 7196 /* return matcher indices */ &kMatcherIndices[12], 7197 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7198 /* is_deprecated */ false, 7199 }, 7200 { 7201 /* [168] */ 7202 /* num parameters */ 1, 7203 /* num open types */ 0, 7204 /* num open numbers */ 1, 7205 /* open types */ &kOpenTypes[4], 7206 /* open numbers */ &kOpenNumbers[3], 7207 /* parameters */ &kParameters[626], 7208 /* return matcher indices */ &kMatcherIndices[21], 7209 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7210 /* is_deprecated */ false, 7211 }, 7212 { 7213 /* [169] */ 7214 /* num parameters */ 3, 7215 /* num open types */ 0, 7216 /* num open numbers */ 0, 7217 /* open types */ &kOpenTypes[4], 7218 /* open numbers */ &kOpenNumbers[6], 7219 /* parameters */ &kParameters[351], 7220 /* return matcher indices */ &kMatcherIndices[12], 7221 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7222 /* is_deprecated */ false, 7223 }, 7224 { 7225 /* [170] */ 7226 /* num parameters */ 3, 7227 /* num open types */ 0, 7228 /* num open numbers */ 1, 7229 /* open types */ &kOpenTypes[4], 7230 /* open numbers */ &kOpenNumbers[3], 7231 /* parameters */ &kParameters[348], 7232 /* return matcher indices */ &kMatcherIndices[21], 7233 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7234 /* is_deprecated */ false, 7235 }, 7236 { 7237 /* [171] */ 7238 /* num parameters */ 1, 7239 /* num open types */ 0, 7240 /* num open numbers */ 0, 7241 /* open types */ &kOpenTypes[4], 7242 /* open numbers */ &kOpenNumbers[6], 7243 /* parameters */ &kParameters[625], 7244 /* return matcher indices */ &kMatcherIndices[12], 7245 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7246 /* is_deprecated */ false, 7247 }, 7248 { 7249 /* [172] */ 7250 /* num parameters */ 1, 7251 /* num open types */ 0, 7252 /* num open numbers */ 1, 7253 /* open types */ &kOpenTypes[4], 7254 /* open numbers */ &kOpenNumbers[3], 7255 /* parameters */ &kParameters[624], 7256 /* return matcher indices */ &kMatcherIndices[21], 7257 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7258 /* is_deprecated */ false, 7259 }, 7260 { 7261 /* [173] */ 7262 /* num parameters */ 1, 7263 /* num open types */ 0, 7264 /* num open numbers */ 0, 7265 /* open types */ &kOpenTypes[4], 7266 /* open numbers */ &kOpenNumbers[6], 7267 /* parameters */ &kParameters[623], 7268 /* return matcher indices */ &kMatcherIndices[138], 7269 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7270 /* is_deprecated */ false, 7271 }, 7272 { 7273 /* [174] */ 7274 /* num parameters */ 1, 7275 /* num open types */ 0, 7276 /* num open numbers */ 1, 7277 /* open types */ &kOpenTypes[4], 7278 /* open numbers */ &kOpenNumbers[3], 7279 /* parameters */ &kParameters[622], 7280 /* return matcher indices */ &kMatcherIndices[107], 7281 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7282 /* is_deprecated */ false, 7283 }, 7284 { 7285 /* [175] */ 7286 /* num parameters */ 1, 7287 /* num open types */ 0, 7288 /* num open numbers */ 0, 7289 /* open types */ &kOpenTypes[4], 7290 /* open numbers */ &kOpenNumbers[6], 7291 /* parameters */ &kParameters[621], 7292 /* return matcher indices */ &kMatcherIndices[12], 7293 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7294 /* is_deprecated */ false, 7295 }, 7296 { 7297 /* [176] */ 7298 /* num parameters */ 1, 7299 /* num open types */ 0, 7300 /* num open numbers */ 1, 7301 /* open types */ &kOpenTypes[4], 7302 /* open numbers */ &kOpenNumbers[3], 7303 /* parameters */ &kParameters[620], 7304 /* return matcher indices */ &kMatcherIndices[21], 7305 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7306 /* is_deprecated */ false, 7307 }, 7308 { 7309 /* [177] */ 7310 /* num parameters */ 1, 7311 /* num open types */ 0, 7312 /* num open numbers */ 0, 7313 /* open types */ &kOpenTypes[4], 7314 /* open numbers */ &kOpenNumbers[6], 7315 /* parameters */ &kParameters[619], 7316 /* return matcher indices */ &kMatcherIndices[12], 7317 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7318 /* is_deprecated */ false, 7319 }, 7320 { 7321 /* [178] */ 7322 /* num parameters */ 1, 7323 /* num open types */ 0, 7324 /* num open numbers */ 1, 7325 /* open types */ &kOpenTypes[4], 7326 /* open numbers */ &kOpenNumbers[3], 7327 /* parameters */ &kParameters[618], 7328 /* return matcher indices */ &kMatcherIndices[21], 7329 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7330 /* is_deprecated */ false, 7331 }, 7332 { 7333 /* [179] */ 7334 /* num parameters */ 1, 7335 /* num open types */ 0, 7336 /* num open numbers */ 0, 7337 /* open types */ &kOpenTypes[4], 7338 /* open numbers */ &kOpenNumbers[6], 7339 /* parameters */ &kParameters[617], 7340 /* return matcher indices */ &kMatcherIndices[12], 7341 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7342 /* is_deprecated */ false, 7343 }, 7344 { 7345 /* [180] */ 7346 /* num parameters */ 1, 7347 /* num open types */ 0, 7348 /* num open numbers */ 1, 7349 /* open types */ &kOpenTypes[4], 7350 /* open numbers */ &kOpenNumbers[3], 7351 /* parameters */ &kParameters[616], 7352 /* return matcher indices */ &kMatcherIndices[21], 7353 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment), 7354 /* is_deprecated */ false, 7355 }, 7356 { 7357 /* [181] */ 7358 /* num parameters */ 1, 7359 /* num open types */ 1, 7360 /* num open numbers */ 0, 7361 /* open types */ &kOpenTypes[1], 7362 /* open numbers */ &kOpenNumbers[6], 7363 /* parameters */ &kParameters[646], 7364 /* return matcher indices */ &kMatcherIndices[1], 7365 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7366 /* is_deprecated */ false, 7367 }, 7368 { 7369 /* [182] */ 7370 /* num parameters */ 1, 7371 /* num open types */ 1, 7372 /* num open numbers */ 1, 7373 /* open types */ &kOpenTypes[1], 7374 /* open numbers */ &kOpenNumbers[3], 7375 /* parameters */ &kParameters[645], 7376 /* return matcher indices */ &kMatcherIndices[30], 7377 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7378 /* is_deprecated */ false, 7379 }, 7380 { 7381 /* [183] */ 7382 /* num parameters */ 1, 7383 /* num open types */ 0, 7384 /* num open numbers */ 0, 7385 /* open types */ &kOpenTypes[4], 7386 /* open numbers */ &kOpenNumbers[6], 7387 /* parameters */ &kParameters[614], 7388 /* return matcher indices */ &kMatcherIndices[12], 7389 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7390 /* is_deprecated */ false, 7391 }, 7392 { 7393 /* [184] */ 7394 /* num parameters */ 1, 7395 /* num open types */ 0, 7396 /* num open numbers */ 1, 7397 /* open types */ &kOpenTypes[4], 7398 /* open numbers */ &kOpenNumbers[3], 7399 /* parameters */ &kParameters[613], 7400 /* return matcher indices */ &kMatcherIndices[21], 7401 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7402 /* is_deprecated */ false, 7403 }, 7404 { 7405 /* [185] */ 7406 /* num parameters */ 1, 7407 /* num open types */ 0, 7408 /* num open numbers */ 0, 7409 /* open types */ &kOpenTypes[4], 7410 /* open numbers */ &kOpenNumbers[6], 7411 /* parameters */ &kParameters[612], 7412 /* return matcher indices */ &kMatcherIndices[10], 7413 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7414 /* is_deprecated */ true, 7415 }, 7416 { 7417 /* [186] */ 7418 /* num parameters */ 1, 7419 /* num open types */ 0, 7420 /* num open numbers */ 1, 7421 /* open types */ &kOpenTypes[4], 7422 /* open numbers */ &kOpenNumbers[3], 7423 /* parameters */ &kParameters[611], 7424 /* return matcher indices */ &kMatcherIndices[24], 7425 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7426 /* is_deprecated */ true, 7427 }, 7428 { 7429 /* [187] */ 7430 /* num parameters */ 1, 7431 /* num open types */ 0, 7432 /* num open numbers */ 0, 7433 /* open types */ &kOpenTypes[4], 7434 /* open numbers */ &kOpenNumbers[6], 7435 /* parameters */ &kParameters[610], 7436 /* return matcher indices */ &kMatcherIndices[10], 7437 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7438 /* is_deprecated */ true, 7439 }, 7440 { 7441 /* [188] */ 7442 /* num parameters */ 1, 7443 /* num open types */ 0, 7444 /* num open numbers */ 1, 7445 /* open types */ &kOpenTypes[4], 7446 /* open numbers */ &kOpenNumbers[3], 7447 /* parameters */ &kParameters[609], 7448 /* return matcher indices */ &kMatcherIndices[24], 7449 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7450 /* is_deprecated */ true, 7451 }, 7452 { 7453 /* [189] */ 7454 /* num parameters */ 1, 7455 /* num open types */ 0, 7456 /* num open numbers */ 0, 7457 /* open types */ &kOpenTypes[4], 7458 /* open numbers */ &kOpenNumbers[6], 7459 /* parameters */ &kParameters[608], 7460 /* return matcher indices */ &kMatcherIndices[10], 7461 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7462 /* is_deprecated */ true, 7463 }, 7464 { 7465 /* [190] */ 7466 /* num parameters */ 1, 7467 /* num open types */ 0, 7468 /* num open numbers */ 1, 7469 /* open types */ &kOpenTypes[4], 7470 /* open numbers */ &kOpenNumbers[3], 7471 /* parameters */ &kParameters[607], 7472 /* return matcher indices */ &kMatcherIndices[24], 7473 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7474 /* is_deprecated */ true, 7475 }, 7476 { 7477 /* [191] */ 7478 /* num parameters */ 1, 7479 /* num open types */ 0, 7480 /* num open numbers */ 0, 7481 /* open types */ &kOpenTypes[4], 7482 /* open numbers */ &kOpenNumbers[6], 7483 /* parameters */ &kParameters[606], 7484 /* return matcher indices */ &kMatcherIndices[10], 7485 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7486 /* is_deprecated */ true, 7487 }, 7488 { 7489 /* [192] */ 7490 /* num parameters */ 1, 7491 /* num open types */ 0, 7492 /* num open numbers */ 1, 7493 /* open types */ &kOpenTypes[4], 7494 /* open numbers */ &kOpenNumbers[3], 7495 /* parameters */ &kParameters[605], 7496 /* return matcher indices */ &kMatcherIndices[24], 7497 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7498 /* is_deprecated */ true, 7499 }, 7500 { 7501 /* [193] */ 7502 /* num parameters */ 2, 7503 /* num open types */ 0, 7504 /* num open numbers */ 0, 7505 /* open types */ &kOpenTypes[4], 7506 /* open numbers */ &kOpenNumbers[6], 7507 /* parameters */ &kParameters[487], 7508 /* return matcher indices */ &kMatcherIndices[12], 7509 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7510 /* is_deprecated */ false, 7511 }, 7512 { 7513 /* [194] */ 7514 /* num parameters */ 2, 7515 /* num open types */ 0, 7516 /* num open numbers */ 1, 7517 /* open types */ &kOpenTypes[4], 7518 /* open numbers */ &kOpenNumbers[3], 7519 /* parameters */ &kParameters[513], 7520 /* return matcher indices */ &kMatcherIndices[21], 7521 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7522 /* is_deprecated */ false, 7523 }, 7524 { 7525 /* [195] */ 7526 /* num parameters */ 1, 7527 /* num open types */ 0, 7528 /* num open numbers */ 0, 7529 /* open types */ &kOpenTypes[4], 7530 /* open numbers */ &kOpenNumbers[6], 7531 /* parameters */ &kParameters[604], 7532 /* return matcher indices */ &kMatcherIndices[12], 7533 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7534 /* is_deprecated */ false, 7535 }, 7536 { 7537 /* [196] */ 7538 /* num parameters */ 1, 7539 /* num open types */ 0, 7540 /* num open numbers */ 1, 7541 /* open types */ &kOpenTypes[4], 7542 /* open numbers */ &kOpenNumbers[3], 7543 /* parameters */ &kParameters[603], 7544 /* return matcher indices */ &kMatcherIndices[12], 7545 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7546 /* is_deprecated */ false, 7547 }, 7548 { 7549 /* [197] */ 7550 /* num parameters */ 1, 7551 /* num open types */ 0, 7552 /* num open numbers */ 0, 7553 /* open types */ &kOpenTypes[4], 7554 /* open numbers */ &kOpenNumbers[6], 7555 /* parameters */ &kParameters[602], 7556 /* return matcher indices */ &kMatcherIndices[12], 7557 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7558 /* is_deprecated */ false, 7559 }, 7560 { 7561 /* [198] */ 7562 /* num parameters */ 1, 7563 /* num open types */ 0, 7564 /* num open numbers */ 1, 7565 /* open types */ &kOpenTypes[4], 7566 /* open numbers */ &kOpenNumbers[3], 7567 /* parameters */ &kParameters[601], 7568 /* return matcher indices */ &kMatcherIndices[21], 7569 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7570 /* is_deprecated */ false, 7571 }, 7572 { 7573 /* [199] */ 7574 /* num parameters */ 1, 7575 /* num open types */ 0, 7576 /* num open numbers */ 0, 7577 /* open types */ &kOpenTypes[4], 7578 /* open numbers */ &kOpenNumbers[6], 7579 /* parameters */ &kParameters[600], 7580 /* return matcher indices */ &kMatcherIndices[12], 7581 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7582 /* is_deprecated */ false, 7583 }, 7584 { 7585 /* [200] */ 7586 /* num parameters */ 1, 7587 /* num open types */ 0, 7588 /* num open numbers */ 1, 7589 /* open types */ &kOpenTypes[4], 7590 /* open numbers */ &kOpenNumbers[3], 7591 /* parameters */ &kParameters[599], 7592 /* return matcher indices */ &kMatcherIndices[21], 7593 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7594 /* is_deprecated */ false, 7595 }, 7596 { 7597 /* [201] */ 7598 /* num parameters */ 2, 7599 /* num open types */ 1, 7600 /* num open numbers */ 0, 7601 /* open types */ &kOpenTypes[0], 7602 /* open numbers */ &kOpenNumbers[6], 7603 /* parameters */ &kParameters[493], 7604 /* return matcher indices */ &kMatcherIndices[1], 7605 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7606 /* is_deprecated */ false, 7607 }, 7608 { 7609 /* [202] */ 7610 /* num parameters */ 2, 7611 /* num open types */ 1, 7612 /* num open numbers */ 1, 7613 /* open types */ &kOpenTypes[0], 7614 /* open numbers */ &kOpenNumbers[3], 7615 /* parameters */ &kParameters[459], 7616 /* return matcher indices */ &kMatcherIndices[30], 7617 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7618 /* is_deprecated */ false, 7619 }, 7620 { 7621 /* [203] */ 7622 /* num parameters */ 2, 7623 /* num open types */ 1, 7624 /* num open numbers */ 0, 7625 /* open types */ &kOpenTypes[0], 7626 /* open numbers */ &kOpenNumbers[6], 7627 /* parameters */ &kParameters[491], 7628 /* return matcher indices */ &kMatcherIndices[1], 7629 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7630 /* is_deprecated */ false, 7631 }, 7632 { 7633 /* [204] */ 7634 /* num parameters */ 2, 7635 /* num open types */ 1, 7636 /* num open numbers */ 1, 7637 /* open types */ &kOpenTypes[0], 7638 /* open numbers */ &kOpenNumbers[3], 7639 /* parameters */ &kParameters[489], 7640 /* return matcher indices */ &kMatcherIndices[30], 7641 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7642 /* is_deprecated */ false, 7643 }, 7644 { 7645 /* [205] */ 7646 /* num parameters */ 1, 7647 /* num open types */ 0, 7648 /* num open numbers */ 0, 7649 /* open types */ &kOpenTypes[4], 7650 /* open numbers */ &kOpenNumbers[6], 7651 /* parameters */ &kParameters[648], 7652 /* return matcher indices */ &kMatcherIndices[12], 7653 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7654 /* is_deprecated */ false, 7655 }, 7656 { 7657 /* [206] */ 7658 /* num parameters */ 1, 7659 /* num open types */ 0, 7660 /* num open numbers */ 1, 7661 /* open types */ &kOpenTypes[4], 7662 /* open numbers */ &kOpenNumbers[3], 7663 /* parameters */ &kParameters[647], 7664 /* return matcher indices */ &kMatcherIndices[21], 7665 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7666 /* is_deprecated */ false, 7667 }, 7668 { 7669 /* [207] */ 7670 /* num parameters */ 1, 7671 /* num open types */ 0, 7672 /* num open numbers */ 0, 7673 /* open types */ &kOpenTypes[4], 7674 /* open numbers */ &kOpenNumbers[6], 7675 /* parameters */ &kParameters[598], 7676 /* return matcher indices */ &kMatcherIndices[137], 7677 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7678 /* is_deprecated */ false, 7679 }, 7680 { 7681 /* [208] */ 7682 /* num parameters */ 1, 7683 /* num open types */ 0, 7684 /* num open numbers */ 1, 7685 /* open types */ &kOpenTypes[4], 7686 /* open numbers */ &kOpenNumbers[3], 7687 /* parameters */ &kParameters[597], 7688 /* return matcher indices */ &kMatcherIndices[103], 7689 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7690 /* is_deprecated */ false, 7691 }, 7692 { 7693 /* [209] */ 7694 /* num parameters */ 1, 7695 /* num open types */ 0, 7696 /* num open numbers */ 0, 7697 /* open types */ &kOpenTypes[4], 7698 /* open numbers */ &kOpenNumbers[6], 7699 /* parameters */ &kParameters[650], 7700 /* return matcher indices */ &kMatcherIndices[12], 7701 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7702 /* is_deprecated */ false, 7703 }, 7704 { 7705 /* [210] */ 7706 /* num parameters */ 1, 7707 /* num open types */ 0, 7708 /* num open numbers */ 1, 7709 /* open types */ &kOpenTypes[4], 7710 /* open numbers */ &kOpenNumbers[3], 7711 /* parameters */ &kParameters[649], 7712 /* return matcher indices */ &kMatcherIndices[21], 7713 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7714 /* is_deprecated */ false, 7715 }, 7716 { 7717 /* [211] */ 7718 /* num parameters */ 3, 7719 /* num open types */ 1, 7720 /* num open numbers */ 0, 7721 /* open types */ &kOpenTypes[0], 7722 /* open numbers */ &kOpenNumbers[6], 7723 /* parameters */ &kParameters[402], 7724 /* return matcher indices */ &kMatcherIndices[1], 7725 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7726 /* is_deprecated */ false, 7727 }, 7728 { 7729 /* [212] */ 7730 /* num parameters */ 3, 7731 /* num open types */ 1, 7732 /* num open numbers */ 1, 7733 /* open types */ &kOpenTypes[0], 7734 /* open numbers */ &kOpenNumbers[3], 7735 /* parameters */ &kParameters[408], 7736 /* return matcher indices */ &kMatcherIndices[30], 7737 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7738 /* is_deprecated */ false, 7739 }, 7740 { 7741 /* [213] */ 7742 /* num parameters */ 1, 7743 /* num open types */ 1, 7744 /* num open numbers */ 0, 7745 /* open types */ &kOpenTypes[0], 7746 /* open numbers */ &kOpenNumbers[6], 7747 /* parameters */ &kParameters[577], 7748 /* return matcher indices */ &kMatcherIndices[55], 7749 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7750 /* is_deprecated */ false, 7751 }, 7752 { 7753 /* [214] */ 7754 /* num parameters */ 1, 7755 /* num open types */ 0, 7756 /* num open numbers */ 0, 7757 /* open types */ &kOpenTypes[4], 7758 /* open numbers */ &kOpenNumbers[6], 7759 /* parameters */ &kParameters[578], 7760 /* return matcher indices */ &kMatcherIndices[55], 7761 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7762 /* is_deprecated */ false, 7763 }, 7764 { 7765 /* [215] */ 7766 /* num parameters */ 2, 7767 /* num open types */ 0, 7768 /* num open numbers */ 0, 7769 /* open types */ &kOpenTypes[4], 7770 /* open numbers */ &kOpenNumbers[6], 7771 /* parameters */ &kParameters[485], 7772 /* return matcher indices */ &kMatcherIndices[12], 7773 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7774 /* is_deprecated */ false, 7775 }, 7776 { 7777 /* [216] */ 7778 /* num parameters */ 2, 7779 /* num open types */ 0, 7780 /* num open numbers */ 1, 7781 /* open types */ &kOpenTypes[4], 7782 /* open numbers */ &kOpenNumbers[3], 7783 /* parameters */ &kParameters[483], 7784 /* return matcher indices */ &kMatcherIndices[21], 7785 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7786 /* is_deprecated */ false, 7787 }, 7788 { 7789 /* [217] */ 7790 /* num parameters */ 1, 7791 /* num open types */ 0, 7792 /* num open numbers */ 0, 7793 /* open types */ &kOpenTypes[4], 7794 /* open numbers */ &kOpenNumbers[6], 7795 /* parameters */ &kParameters[654], 7796 /* return matcher indices */ &kMatcherIndices[12], 7797 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7798 /* is_deprecated */ false, 7799 }, 7800 { 7801 /* [218] */ 7802 /* num parameters */ 1, 7803 /* num open types */ 0, 7804 /* num open numbers */ 1, 7805 /* open types */ &kOpenTypes[4], 7806 /* open numbers */ &kOpenNumbers[3], 7807 /* parameters */ &kParameters[653], 7808 /* return matcher indices */ &kMatcherIndices[21], 7809 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7810 /* is_deprecated */ false, 7811 }, 7812 { 7813 /* [219] */ 7814 /* num parameters */ 1, 7815 /* num open types */ 0, 7816 /* num open numbers */ 0, 7817 /* open types */ &kOpenTypes[4], 7818 /* open numbers */ &kOpenNumbers[6], 7819 /* parameters */ &kParameters[656], 7820 /* return matcher indices */ &kMatcherIndices[12], 7821 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7822 /* is_deprecated */ false, 7823 }, 7824 { 7825 /* [220] */ 7826 /* num parameters */ 1, 7827 /* num open types */ 0, 7828 /* num open numbers */ 1, 7829 /* open types */ &kOpenTypes[4], 7830 /* open numbers */ &kOpenNumbers[3], 7831 /* parameters */ &kParameters[655], 7832 /* return matcher indices */ &kMatcherIndices[21], 7833 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7834 /* is_deprecated */ false, 7835 }, 7836 { 7837 /* [221] */ 7838 /* num parameters */ 2, 7839 /* num open types */ 0, 7840 /* num open numbers */ 0, 7841 /* open types */ &kOpenTypes[4], 7842 /* open numbers */ &kOpenNumbers[6], 7843 /* parameters */ &kParameters[475], 7844 /* return matcher indices */ &kMatcherIndices[12], 7845 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7846 /* is_deprecated */ false, 7847 }, 7848 { 7849 /* [222] */ 7850 /* num parameters */ 2, 7851 /* num open types */ 0, 7852 /* num open numbers */ 1, 7853 /* open types */ &kOpenTypes[4], 7854 /* open numbers */ &kOpenNumbers[3], 7855 /* parameters */ &kParameters[467], 7856 /* return matcher indices */ &kMatcherIndices[21], 7857 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7858 /* is_deprecated */ false, 7859 }, 7860 { 7861 /* [223] */ 7862 /* num parameters */ 1, 7863 /* num open types */ 0, 7864 /* num open numbers */ 0, 7865 /* open types */ &kOpenTypes[4], 7866 /* open numbers */ &kOpenNumbers[6], 7867 /* parameters */ &kParameters[660], 7868 /* return matcher indices */ &kMatcherIndices[10], 7869 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7870 /* is_deprecated */ false, 7871 }, 7872 { 7873 /* [224] */ 7874 /* num parameters */ 1, 7875 /* num open types */ 0, 7876 /* num open numbers */ 1, 7877 /* open types */ &kOpenTypes[4], 7878 /* open numbers */ &kOpenNumbers[3], 7879 /* parameters */ &kParameters[659], 7880 /* return matcher indices */ &kMatcherIndices[10], 7881 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7882 /* is_deprecated */ false, 7883 }, 7884 { 7885 /* [225] */ 7886 /* num parameters */ 1, 7887 /* num open types */ 0, 7888 /* num open numbers */ 0, 7889 /* open types */ &kOpenTypes[4], 7890 /* open numbers */ &kOpenNumbers[6], 7891 /* parameters */ &kParameters[662], 7892 /* return matcher indices */ &kMatcherIndices[10], 7893 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7894 /* is_deprecated */ false, 7895 }, 7896 { 7897 /* [226] */ 7898 /* num parameters */ 1, 7899 /* num open types */ 0, 7900 /* num open numbers */ 1, 7901 /* open types */ &kOpenTypes[4], 7902 /* open numbers */ &kOpenNumbers[3], 7903 /* parameters */ &kParameters[661], 7904 /* return matcher indices */ &kMatcherIndices[10], 7905 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7906 /* is_deprecated */ false, 7907 }, 7908 { 7909 /* [227] */ 7910 /* num parameters */ 1, 7911 /* num open types */ 1, 7912 /* num open numbers */ 0, 7913 /* open types */ &kOpenTypes[1], 7914 /* open numbers */ &kOpenNumbers[6], 7915 /* parameters */ &kParameters[590], 7916 /* return matcher indices */ &kMatcherIndices[1], 7917 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7918 /* is_deprecated */ false, 7919 }, 7920 { 7921 /* [228] */ 7922 /* num parameters */ 1, 7923 /* num open types */ 1, 7924 /* num open numbers */ 1, 7925 /* open types */ &kOpenTypes[1], 7926 /* open numbers */ &kOpenNumbers[3], 7927 /* parameters */ &kParameters[589], 7928 /* return matcher indices */ &kMatcherIndices[30], 7929 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7930 /* is_deprecated */ false, 7931 }, 7932 { 7933 /* [229] */ 7934 /* num parameters */ 1, 7935 /* num open types */ 0, 7936 /* num open numbers */ 0, 7937 /* open types */ &kOpenTypes[4], 7938 /* open numbers */ &kOpenNumbers[6], 7939 /* parameters */ &kParameters[588], 7940 /* return matcher indices */ &kMatcherIndices[12], 7941 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7942 /* is_deprecated */ false, 7943 }, 7944 { 7945 /* [230] */ 7946 /* num parameters */ 1, 7947 /* num open types */ 0, 7948 /* num open numbers */ 1, 7949 /* open types */ &kOpenTypes[4], 7950 /* open numbers */ &kOpenNumbers[3], 7951 /* parameters */ &kParameters[587], 7952 /* return matcher indices */ &kMatcherIndices[21], 7953 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7954 /* is_deprecated */ false, 7955 }, 7956 { 7957 /* [231] */ 7958 /* num parameters */ 1, 7959 /* num open types */ 0, 7960 /* num open numbers */ 0, 7961 /* open types */ &kOpenTypes[4], 7962 /* open numbers */ &kOpenNumbers[6], 7963 /* parameters */ &kParameters[664], 7964 /* return matcher indices */ &kMatcherIndices[12], 7965 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7966 /* is_deprecated */ false, 7967 }, 7968 { 7969 /* [232] */ 7970 /* num parameters */ 1, 7971 /* num open types */ 0, 7972 /* num open numbers */ 1, 7973 /* open types */ &kOpenTypes[4], 7974 /* open numbers */ &kOpenNumbers[3], 7975 /* parameters */ &kParameters[663], 7976 /* return matcher indices */ &kMatcherIndices[21], 7977 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7978 /* is_deprecated */ false, 7979 }, 7980 { 7981 /* [233] */ 7982 /* num parameters */ 1, 7983 /* num open types */ 0, 7984 /* num open numbers */ 0, 7985 /* open types */ &kOpenTypes[4], 7986 /* open numbers */ &kOpenNumbers[6], 7987 /* parameters */ &kParameters[586], 7988 /* return matcher indices */ &kMatcherIndices[12], 7989 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 7990 /* is_deprecated */ false, 7991 }, 7992 { 7993 /* [234] */ 7994 /* num parameters */ 1, 7995 /* num open types */ 0, 7996 /* num open numbers */ 1, 7997 /* open types */ &kOpenTypes[4], 7998 /* open numbers */ &kOpenNumbers[3], 7999 /* parameters */ &kParameters[585], 8000 /* return matcher indices */ &kMatcherIndices[21], 8001 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8002 /* is_deprecated */ false, 8003 }, 8004 { 8005 /* [235] */ 8006 /* num parameters */ 1, 8007 /* num open types */ 0, 8008 /* num open numbers */ 0, 8009 /* open types */ &kOpenTypes[4], 8010 /* open numbers */ &kOpenNumbers[6], 8011 /* parameters */ &kParameters[584], 8012 /* return matcher indices */ &kMatcherIndices[12], 8013 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8014 /* is_deprecated */ false, 8015 }, 8016 { 8017 /* [236] */ 8018 /* num parameters */ 1, 8019 /* num open types */ 0, 8020 /* num open numbers */ 1, 8021 /* open types */ &kOpenTypes[4], 8022 /* open numbers */ &kOpenNumbers[3], 8023 /* parameters */ &kParameters[583], 8024 /* return matcher indices */ &kMatcherIndices[21], 8025 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8026 /* is_deprecated */ false, 8027 }, 8028 { 8029 /* [237] */ 8030 /* num parameters */ 1, 8031 /* num open types */ 0, 8032 /* num open numbers */ 0, 8033 /* open types */ &kOpenTypes[4], 8034 /* open numbers */ &kOpenNumbers[6], 8035 /* parameters */ &kParameters[582], 8036 /* return matcher indices */ &kMatcherIndices[12], 8037 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8038 /* is_deprecated */ false, 8039 }, 8040 { 8041 /* [238] */ 8042 /* num parameters */ 1, 8043 /* num open types */ 0, 8044 /* num open numbers */ 1, 8045 /* open types */ &kOpenTypes[4], 8046 /* open numbers */ &kOpenNumbers[3], 8047 /* parameters */ &kParameters[581], 8048 /* return matcher indices */ &kMatcherIndices[21], 8049 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8050 /* is_deprecated */ false, 8051 }, 8052 { 8053 /* [239] */ 8054 /* num parameters */ 1, 8055 /* num open types */ 0, 8056 /* num open numbers */ 0, 8057 /* open types */ &kOpenTypes[4], 8058 /* open numbers */ &kOpenNumbers[6], 8059 /* parameters */ &kParameters[556], 8060 /* return matcher indices */ &kMatcherIndices[12], 8061 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8062 /* is_deprecated */ false, 8063 }, 8064 { 8065 /* [240] */ 8066 /* num parameters */ 1, 8067 /* num open types */ 0, 8068 /* num open numbers */ 1, 8069 /* open types */ &kOpenTypes[4], 8070 /* open numbers */ &kOpenNumbers[3], 8071 /* parameters */ &kParameters[555], 8072 /* return matcher indices */ &kMatcherIndices[21], 8073 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8074 /* is_deprecated */ false, 8075 }, 8076 { 8077 /* [241] */ 8078 /* num parameters */ 1, 8079 /* num open types */ 0, 8080 /* num open numbers */ 0, 8081 /* open types */ &kOpenTypes[4], 8082 /* open numbers */ &kOpenNumbers[6], 8083 /* parameters */ &kParameters[580], 8084 /* return matcher indices */ &kMatcherIndices[12], 8085 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8086 /* is_deprecated */ false, 8087 }, 8088 { 8089 /* [242] */ 8090 /* num parameters */ 1, 8091 /* num open types */ 0, 8092 /* num open numbers */ 1, 8093 /* open types */ &kOpenTypes[4], 8094 /* open numbers */ &kOpenNumbers[3], 8095 /* parameters */ &kParameters[579], 8096 /* return matcher indices */ &kMatcherIndices[21], 8097 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8098 /* is_deprecated */ false, 8099 }, 8100 { 8101 /* [243] */ 8102 /* num parameters */ 2, 8103 /* num open types */ 0, 8104 /* num open numbers */ 0, 8105 /* open types */ &kOpenTypes[4], 8106 /* open numbers */ &kOpenNumbers[6], 8107 /* parameters */ &kParameters[469], 8108 /* return matcher indices */ &kMatcherIndices[12], 8109 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8110 /* is_deprecated */ false, 8111 }, 8112 { 8113 /* [244] */ 8114 /* num parameters */ 2, 8115 /* num open types */ 0, 8116 /* num open numbers */ 1, 8117 /* open types */ &kOpenTypes[4], 8118 /* open numbers */ &kOpenNumbers[3], 8119 /* parameters */ &kParameters[471], 8120 /* return matcher indices */ &kMatcherIndices[21], 8121 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8122 /* is_deprecated */ false, 8123 }, 8124 { 8125 /* [245] */ 8126 /* num parameters */ 1, 8127 /* num open types */ 0, 8128 /* num open numbers */ 0, 8129 /* open types */ &kOpenTypes[4], 8130 /* open numbers */ &kOpenNumbers[6], 8131 /* parameters */ &kParameters[559], 8132 /* return matcher indices */ &kMatcherIndices[12], 8133 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8134 /* is_deprecated */ false, 8135 }, 8136 { 8137 /* [246] */ 8138 /* num parameters */ 1, 8139 /* num open types */ 0, 8140 /* num open numbers */ 1, 8141 /* open types */ &kOpenTypes[4], 8142 /* open numbers */ &kOpenNumbers[3], 8143 /* parameters */ &kParameters[558], 8144 /* return matcher indices */ &kMatcherIndices[21], 8145 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8146 /* is_deprecated */ false, 8147 }, 8148 { 8149 /* [247] */ 8150 /* num parameters */ 3, 8151 /* num open types */ 0, 8152 /* num open numbers */ 0, 8153 /* open types */ &kOpenTypes[4], 8154 /* open numbers */ &kOpenNumbers[6], 8155 /* parameters */ &kParameters[342], 8156 /* return matcher indices */ &kMatcherIndices[12], 8157 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8158 /* is_deprecated */ false, 8159 }, 8160 { 8161 /* [248] */ 8162 /* num parameters */ 3, 8163 /* num open types */ 0, 8164 /* num open numbers */ 1, 8165 /* open types */ &kOpenTypes[4], 8166 /* open numbers */ &kOpenNumbers[3], 8167 /* parameters */ &kParameters[426], 8168 /* return matcher indices */ &kMatcherIndices[21], 8169 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8170 /* is_deprecated */ false, 8171 }, 8172 { 8173 /* [249] */ 8174 /* num parameters */ 1, 8175 /* num open types */ 1, 8176 /* num open numbers */ 0, 8177 /* open types */ &kOpenTypes[0], 8178 /* open numbers */ &kOpenNumbers[6], 8179 /* parameters */ &kParameters[666], 8180 /* return matcher indices */ &kMatcherIndices[1], 8181 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8182 /* is_deprecated */ false, 8183 }, 8184 { 8185 /* [250] */ 8186 /* num parameters */ 1, 8187 /* num open types */ 1, 8188 /* num open numbers */ 1, 8189 /* open types */ &kOpenTypes[0], 8190 /* open numbers */ &kOpenNumbers[3], 8191 /* parameters */ &kParameters[665], 8192 /* return matcher indices */ &kMatcherIndices[30], 8193 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8194 /* is_deprecated */ false, 8195 }, 8196 { 8197 /* [251] */ 8198 /* num parameters */ 1, 8199 /* num open types */ 1, 8200 /* num open numbers */ 0, 8201 /* open types */ &kOpenTypes[2], 8202 /* open numbers */ &kOpenNumbers[6], 8203 /* parameters */ &kParameters[615], 8204 /* return matcher indices */ nullptr, 8205 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8206 /* is_deprecated */ true, 8207 }, 8208 { 8209 /* [252] */ 8210 /* num parameters */ 1, 8211 /* num open types */ 0, 8212 /* num open numbers */ 0, 8213 /* open types */ &kOpenTypes[4], 8214 /* open numbers */ &kOpenNumbers[6], 8215 /* parameters */ &kParameters[593], 8216 /* return matcher indices */ &kMatcherIndices[43], 8217 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8218 /* is_deprecated */ false, 8219 }, 8220 { 8221 /* [253] */ 8222 /* num parameters */ 1, 8223 /* num open types */ 0, 8224 /* num open numbers */ 0, 8225 /* open types */ &kOpenTypes[4], 8226 /* open numbers */ &kOpenNumbers[6], 8227 /* parameters */ &kParameters[554], 8228 /* return matcher indices */ &kMatcherIndices[91], 8229 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8230 /* is_deprecated */ false, 8231 }, 8232 { 8233 /* [254] */ 8234 /* num parameters */ 1, 8235 /* num open types */ 0, 8236 /* num open numbers */ 0, 8237 /* open types */ &kOpenTypes[4], 8238 /* open numbers */ &kOpenNumbers[6], 8239 /* parameters */ &kParameters[553], 8240 /* return matcher indices */ &kMatcherIndices[91], 8241 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8242 /* is_deprecated */ false, 8243 }, 8244 { 8245 /* [255] */ 8246 /* num parameters */ 1, 8247 /* num open types */ 0, 8248 /* num open numbers */ 0, 8249 /* open types */ &kOpenTypes[4], 8250 /* open numbers */ &kOpenNumbers[6], 8251 /* parameters */ &kParameters[552], 8252 /* return matcher indices */ &kMatcherIndices[91], 8253 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8254 /* is_deprecated */ false, 8255 }, 8256 { 8257 /* [256] */ 8258 /* num parameters */ 1, 8259 /* num open types */ 0, 8260 /* num open numbers */ 0, 8261 /* open types */ &kOpenTypes[4], 8262 /* open numbers */ &kOpenNumbers[6], 8263 /* parameters */ &kParameters[551], 8264 /* return matcher indices */ &kMatcherIndices[87], 8265 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8266 /* is_deprecated */ false, 8267 }, 8268 { 8269 /* [257] */ 8270 /* num parameters */ 1, 8271 /* num open types */ 0, 8272 /* num open numbers */ 0, 8273 /* open types */ &kOpenTypes[4], 8274 /* open numbers */ &kOpenNumbers[6], 8275 /* parameters */ &kParameters[550], 8276 /* return matcher indices */ &kMatcherIndices[87], 8277 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8278 /* is_deprecated */ false, 8279 }, 8280 { 8281 /* [258] */ 8282 /* num parameters */ 0, 8283 /* num open types */ 0, 8284 /* num open numbers */ 0, 8285 /* open types */ &kOpenTypes[4], 8286 /* open numbers */ &kOpenNumbers[6], 8287 /* parameters */ &kParameters[667], 8288 /* return matcher indices */ nullptr, 8289 /* supported_stages */ PipelineStageSet(PipelineStage::kCompute), 8290 /* is_deprecated */ false, 8291 }, 8292 { 8293 /* [259] */ 8294 /* num parameters */ 3, 8295 /* num open types */ 1, 8296 /* num open numbers */ 1, 8297 /* open types */ &kOpenTypes[1], 8298 /* open numbers */ &kOpenNumbers[5], 8299 /* parameters */ &kParameters[387], 8300 /* return matcher indices */ &kMatcherIndices[105], 8301 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8302 /* is_deprecated */ false, 8303 }, 8304 { 8305 /* [260] */ 8306 /* num parameters */ 3, 8307 /* num open types */ 0, 8308 /* num open numbers */ 1, 8309 /* open types */ &kOpenTypes[4], 8310 /* open numbers */ &kOpenNumbers[3], 8311 /* parameters */ &kParameters[420], 8312 /* return matcher indices */ &kMatcherIndices[21], 8313 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8314 /* is_deprecated */ false, 8315 }, 8316 { 8317 /* [261] */ 8318 /* num parameters */ 2, 8319 /* num open types */ 0, 8320 /* num open numbers */ 1, 8321 /* open types */ &kOpenTypes[4], 8322 /* open numbers */ &kOpenNumbers[3], 8323 /* parameters */ &kParameters[465], 8324 /* return matcher indices */ &kMatcherIndices[21], 8325 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8326 /* is_deprecated */ false, 8327 }, 8328 { 8329 /* [262] */ 8330 /* num parameters */ 1, 8331 /* num open types */ 0, 8332 /* num open numbers */ 0, 8333 /* open types */ &kOpenTypes[4], 8334 /* open numbers */ &kOpenNumbers[6], 8335 /* parameters */ &kParameters[591], 8336 /* return matcher indices */ &kMatcherIndices[43], 8337 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8338 /* is_deprecated */ false, 8339 }, 8340 { 8341 /* [263] */ 8342 /* num parameters */ 1, 8343 /* num open types */ 0, 8344 /* num open numbers */ 0, 8345 /* open types */ &kOpenTypes[4], 8346 /* open numbers */ &kOpenNumbers[6], 8347 /* parameters */ &kParameters[592], 8348 /* return matcher indices */ &kMatcherIndices[43], 8349 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8350 /* is_deprecated */ false, 8351 }, 8352 { 8353 /* [264] */ 8354 /* num parameters */ 1, 8355 /* num open types */ 0, 8356 /* num open numbers */ 0, 8357 /* open types */ &kOpenTypes[4], 8358 /* open numbers */ &kOpenNumbers[6], 8359 /* parameters */ &kParameters[594], 8360 /* return matcher indices */ &kMatcherIndices[43], 8361 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8362 /* is_deprecated */ false, 8363 }, 8364 { 8365 /* [265] */ 8366 /* num parameters */ 1, 8367 /* num open types */ 0, 8368 /* num open numbers */ 0, 8369 /* open types */ &kOpenTypes[4], 8370 /* open numbers */ &kOpenNumbers[6], 8371 /* parameters */ &kParameters[595], 8372 /* return matcher indices */ &kMatcherIndices[43], 8373 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8374 /* is_deprecated */ false, 8375 }, 8376 { 8377 /* [266] */ 8378 /* num parameters */ 1, 8379 /* num open types */ 0, 8380 /* num open numbers */ 1, 8381 /* open types */ &kOpenTypes[4], 8382 /* open numbers */ &kOpenNumbers[3], 8383 /* parameters */ &kParameters[596], 8384 /* return matcher indices */ &kMatcherIndices[21], 8385 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8386 /* is_deprecated */ false, 8387 }, 8388 { 8389 /* [267] */ 8390 /* num parameters */ 1, 8391 /* num open types */ 0, 8392 /* num open numbers */ 2, 8393 /* open types */ &kOpenTypes[4], 8394 /* open numbers */ &kOpenNumbers[2], 8395 /* parameters */ &kParameters[557], 8396 /* return matcher indices */ &kMatcherIndices[9], 8397 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8398 /* is_deprecated */ false, 8399 }, 8400 { 8401 /* [268] */ 8402 /* num parameters */ 3, 8403 /* num open types */ 0, 8404 /* num open numbers */ 1, 8405 /* open types */ &kOpenTypes[4], 8406 /* open numbers */ &kOpenNumbers[3], 8407 /* parameters */ &kParameters[354], 8408 /* return matcher indices */ &kMatcherIndices[21], 8409 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8410 /* is_deprecated */ false, 8411 }, 8412 { 8413 /* [269] */ 8414 /* num parameters */ 2, 8415 /* num open types */ 1, 8416 /* num open numbers */ 1, 8417 /* open types */ &kOpenTypes[0], 8418 /* open numbers */ &kOpenNumbers[3], 8419 /* parameters */ &kParameters[481], 8420 /* return matcher indices */ &kMatcherIndices[1], 8421 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8422 /* is_deprecated */ false, 8423 }, 8424 { 8425 /* [270] */ 8426 /* num parameters */ 1, 8427 /* num open types */ 0, 8428 /* num open numbers */ 1, 8429 /* open types */ &kOpenTypes[4], 8430 /* open numbers */ &kOpenNumbers[3], 8431 /* parameters */ &kParameters[644], 8432 /* return matcher indices */ &kMatcherIndices[12], 8433 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8434 /* is_deprecated */ false, 8435 }, 8436 { 8437 /* [271] */ 8438 /* num parameters */ 2, 8439 /* num open types */ 0, 8440 /* num open numbers */ 0, 8441 /* open types */ &kOpenTypes[4], 8442 /* open numbers */ &kOpenNumbers[6], 8443 /* parameters */ &kParameters[463], 8444 /* return matcher indices */ &kMatcherIndices[83], 8445 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8446 /* is_deprecated */ false, 8447 }, 8448 { 8449 /* [272] */ 8450 /* num parameters */ 1, 8451 /* num open types */ 1, 8452 /* num open numbers */ 1, 8453 /* open types */ &kOpenTypes[2], 8454 /* open numbers */ &kOpenNumbers[4], 8455 /* parameters */ &kParameters[657], 8456 /* return matcher indices */ &kMatcherIndices[43], 8457 /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute), 8458 /* is_deprecated */ false, 8459 }, 8460 { 8461 /* [273] */ 8462 /* num parameters */ 1, 8463 /* num open types */ 1, 8464 /* num open numbers */ 1, 8465 /* open types */ &kOpenTypes[1], 8466 /* open numbers */ &kOpenNumbers[5], 8467 /* parameters */ &kParameters[658], 8468 /* return matcher indices */ &kMatcherIndices[1], 8469 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8470 /* is_deprecated */ false, 8471 }, 8472 { 8473 /* [274] */ 8474 /* num parameters */ 2, 8475 /* num open types */ 1, 8476 /* num open numbers */ 1, 8477 /* open types */ &kOpenTypes[1], 8478 /* open numbers */ &kOpenNumbers[5], 8479 /* parameters */ &kParameters[501], 8480 /* return matcher indices */ nullptr, 8481 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8482 /* is_deprecated */ false, 8483 }, 8484 { 8485 /* [275] */ 8486 /* num parameters */ 2, 8487 /* num open types */ 1, 8488 /* num open numbers */ 1, 8489 /* open types */ &kOpenTypes[1], 8490 /* open numbers */ &kOpenNumbers[5], 8491 /* parameters */ &kParameters[505], 8492 /* return matcher indices */ &kMatcherIndices[1], 8493 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8494 /* is_deprecated */ false, 8495 }, 8496 { 8497 /* [276] */ 8498 /* num parameters */ 2, 8499 /* num open types */ 1, 8500 /* num open numbers */ 1, 8501 /* open types */ &kOpenTypes[1], 8502 /* open numbers */ &kOpenNumbers[5], 8503 /* parameters */ &kParameters[509], 8504 /* return matcher indices */ &kMatcherIndices[1], 8505 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8506 /* is_deprecated */ false, 8507 }, 8508 { 8509 /* [277] */ 8510 /* num parameters */ 2, 8511 /* num open types */ 1, 8512 /* num open numbers */ 1, 8513 /* open types */ &kOpenTypes[1], 8514 /* open numbers */ &kOpenNumbers[5], 8515 /* parameters */ &kParameters[531], 8516 /* return matcher indices */ &kMatcherIndices[1], 8517 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8518 /* is_deprecated */ false, 8519 }, 8520 { 8521 /* [278] */ 8522 /* num parameters */ 2, 8523 /* num open types */ 1, 8524 /* num open numbers */ 1, 8525 /* open types */ &kOpenTypes[1], 8526 /* open numbers */ &kOpenNumbers[5], 8527 /* parameters */ &kParameters[517], 8528 /* return matcher indices */ &kMatcherIndices[1], 8529 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8530 /* is_deprecated */ false, 8531 }, 8532 { 8533 /* [279] */ 8534 /* num parameters */ 2, 8535 /* num open types */ 1, 8536 /* num open numbers */ 1, 8537 /* open types */ &kOpenTypes[1], 8538 /* open numbers */ &kOpenNumbers[5], 8539 /* parameters */ &kParameters[521], 8540 /* return matcher indices */ &kMatcherIndices[1], 8541 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8542 /* is_deprecated */ false, 8543 }, 8544 { 8545 /* [280] */ 8546 /* num parameters */ 2, 8547 /* num open types */ 1, 8548 /* num open numbers */ 1, 8549 /* open types */ &kOpenTypes[1], 8550 /* open numbers */ &kOpenNumbers[5], 8551 /* parameters */ &kParameters[525], 8552 /* return matcher indices */ &kMatcherIndices[1], 8553 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8554 /* is_deprecated */ false, 8555 }, 8556 { 8557 /* [281] */ 8558 /* num parameters */ 2, 8559 /* num open types */ 1, 8560 /* num open numbers */ 1, 8561 /* open types */ &kOpenTypes[1], 8562 /* open numbers */ &kOpenNumbers[5], 8563 /* parameters */ &kParameters[499], 8564 /* return matcher indices */ &kMatcherIndices[1], 8565 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8566 /* is_deprecated */ false, 8567 }, 8568 { 8569 /* [282] */ 8570 /* num parameters */ 2, 8571 /* num open types */ 1, 8572 /* num open numbers */ 1, 8573 /* open types */ &kOpenTypes[1], 8574 /* open numbers */ &kOpenNumbers[5], 8575 /* parameters */ &kParameters[473], 8576 /* return matcher indices */ &kMatcherIndices[1], 8577 /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute), 8578 /* is_deprecated */ false, 8579 }, 8580 { 8581 /* [283] */ 8582 /* num parameters */ 0, 8583 /* num open types */ 0, 8584 /* num open numbers */ 0, 8585 /* open types */ &kOpenTypes[4], 8586 /* open numbers */ &kOpenNumbers[6], 8587 /* parameters */ &kParameters[667], 8588 /* return matcher indices */ nullptr, 8589 /* supported_stages */ PipelineStageSet(PipelineStage::kCompute), 8590 /* is_deprecated */ false, 8591 }, 8592}; 8593 8594constexpr IntrinsicInfo kIntrinsics[] = { 8595 { 8596 /* [0] */ 8597 /* fn abs<T : fiu32>(T) -> T */ 8598 /* fn abs<N : num, T : fiu32>(vec<N, T>) -> vec<N, T> */ 8599 /* num overloads */ 2, 8600 /* overloads */ &kOverloads[249], 8601 }, 8602 { 8603 /* [1] */ 8604 /* fn acos(f32) -> f32 */ 8605 /* fn acos<N : num>(vec<N, f32>) -> vec<N, f32> */ 8606 /* num overloads */ 2, 8607 /* overloads */ &kOverloads[231], 8608 }, 8609 { 8610 /* [2] */ 8611 /* fn all(bool) -> bool */ 8612 /* fn all<N : num>(vec<N, bool>) -> bool */ 8613 /* num overloads */ 2, 8614 /* overloads */ &kOverloads[225], 8615 }, 8616 { 8617 /* [3] */ 8618 /* fn any(bool) -> bool */ 8619 /* fn any<N : num>(vec<N, bool>) -> bool */ 8620 /* num overloads */ 2, 8621 /* overloads */ &kOverloads[223], 8622 }, 8623 { 8624 /* [4] */ 8625 /* fn arrayLength<T, A : access>(ptr<storage, array<T>, A>) -> u32 */ 8626 /* num overloads */ 1, 8627 /* overloads */ &kOverloads[272], 8628 }, 8629 { 8630 /* [5] */ 8631 /* fn asin(f32) -> f32 */ 8632 /* fn asin<N : num>(vec<N, f32>) -> vec<N, f32> */ 8633 /* num overloads */ 2, 8634 /* overloads */ &kOverloads[219], 8635 }, 8636 { 8637 /* [6] */ 8638 /* fn atan(f32) -> f32 */ 8639 /* fn atan<N : num>(vec<N, f32>) -> vec<N, f32> */ 8640 /* num overloads */ 2, 8641 /* overloads */ &kOverloads[217], 8642 }, 8643 { 8644 /* [7] */ 8645 /* fn atan2(f32, f32) -> f32 */ 8646 /* fn atan2<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8647 /* num overloads */ 2, 8648 /* overloads */ &kOverloads[215], 8649 }, 8650 { 8651 /* [8] */ 8652 /* fn ceil(f32) -> f32 */ 8653 /* fn ceil<N : num>(vec<N, f32>) -> vec<N, f32> */ 8654 /* num overloads */ 2, 8655 /* overloads */ &kOverloads[145], 8656 }, 8657 { 8658 /* [9] */ 8659 /* fn clamp<T : fiu32>(T, T, T) -> T */ 8660 /* fn clamp<N : num, T : fiu32>(vec<N, T>, vec<N, T>, vec<N, T>) -> vec<N, T> */ 8661 /* num overloads */ 2, 8662 /* overloads */ &kOverloads[211], 8663 }, 8664 { 8665 /* [10] */ 8666 /* fn cos(f32) -> f32 */ 8667 /* fn cos<N : num>(vec<N, f32>) -> vec<N, f32> */ 8668 /* num overloads */ 2, 8669 /* overloads */ &kOverloads[209], 8670 }, 8671 { 8672 /* [11] */ 8673 /* fn cosh(f32) -> f32 */ 8674 /* fn cosh<N : num>(vec<N, f32>) -> vec<N, f32> */ 8675 /* num overloads */ 2, 8676 /* overloads */ &kOverloads[205], 8677 }, 8678 { 8679 /* [12] */ 8680 /* fn countOneBits<T : iu32>(T) -> T */ 8681 /* fn countOneBits<N : num, T : iu32>(vec<N, T>) -> vec<N, T> */ 8682 /* num overloads */ 2, 8683 /* overloads */ &kOverloads[181], 8684 }, 8685 { 8686 /* [13] */ 8687 /* fn cross(vec3<f32>, vec3<f32>) -> vec3<f32> */ 8688 /* num overloads */ 1, 8689 /* overloads */ &kOverloads[271], 8690 }, 8691 { 8692 /* [14] */ 8693 /* fn determinant<N : num>(mat<N, N, f32>) -> f32 */ 8694 /* num overloads */ 1, 8695 /* overloads */ &kOverloads[270], 8696 }, 8697 { 8698 /* [15] */ 8699 /* fn distance(f32, f32) -> f32 */ 8700 /* fn distance<N : num>(vec<N, f32>, vec<N, f32>) -> f32 */ 8701 /* num overloads */ 2, 8702 /* overloads */ &kOverloads[165], 8703 }, 8704 { 8705 /* [16] */ 8706 /* fn dot<N : num, T : fiu32>(vec<N, T>, vec<N, T>) -> T */ 8707 /* num overloads */ 1, 8708 /* overloads */ &kOverloads[269], 8709 }, 8710 { 8711 /* [17] */ 8712 /* fn dpdx(f32) -> f32 */ 8713 /* fn dpdx<N : num>(vec<N, f32>) -> vec<N, f32> */ 8714 /* num overloads */ 2, 8715 /* overloads */ &kOverloads[149], 8716 }, 8717 { 8718 /* [18] */ 8719 /* fn dpdxCoarse(f32) -> f32 */ 8720 /* fn dpdxCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */ 8721 /* num overloads */ 2, 8722 /* overloads */ &kOverloads[151], 8723 }, 8724 { 8725 /* [19] */ 8726 /* fn dpdxFine(f32) -> f32 */ 8727 /* fn dpdxFine<N : num>(vec<N, f32>) -> vec<N, f32> */ 8728 /* num overloads */ 2, 8729 /* overloads */ &kOverloads[153], 8730 }, 8731 { 8732 /* [20] */ 8733 /* fn dpdy(f32) -> f32 */ 8734 /* fn dpdy<N : num>(vec<N, f32>) -> vec<N, f32> */ 8735 /* num overloads */ 2, 8736 /* overloads */ &kOverloads[155], 8737 }, 8738 { 8739 /* [21] */ 8740 /* fn dpdyCoarse(f32) -> f32 */ 8741 /* fn dpdyCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */ 8742 /* num overloads */ 2, 8743 /* overloads */ &kOverloads[157], 8744 }, 8745 { 8746 /* [22] */ 8747 /* fn dpdyFine(f32) -> f32 */ 8748 /* fn dpdyFine<N : num>(vec<N, f32>) -> vec<N, f32> */ 8749 /* num overloads */ 2, 8750 /* overloads */ &kOverloads[159], 8751 }, 8752 { 8753 /* [23] */ 8754 /* fn exp(f32) -> f32 */ 8755 /* fn exp<N : num>(vec<N, f32>) -> vec<N, f32> */ 8756 /* num overloads */ 2, 8757 /* overloads */ &kOverloads[161], 8758 }, 8759 { 8760 /* [24] */ 8761 /* fn exp2(f32) -> f32 */ 8762 /* fn exp2<N : num>(vec<N, f32>) -> vec<N, f32> */ 8763 /* num overloads */ 2, 8764 /* overloads */ &kOverloads[163], 8765 }, 8766 { 8767 /* [25] */ 8768 /* fn faceForward<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8769 /* num overloads */ 1, 8770 /* overloads */ &kOverloads[268], 8771 }, 8772 { 8773 /* [26] */ 8774 /* fn floor(f32) -> f32 */ 8775 /* fn floor<N : num>(vec<N, f32>) -> vec<N, f32> */ 8776 /* num overloads */ 2, 8777 /* overloads */ &kOverloads[167], 8778 }, 8779 { 8780 /* [27] */ 8781 /* fn fma(f32, f32, f32) -> f32 */ 8782 /* fn fma<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8783 /* num overloads */ 2, 8784 /* overloads */ &kOverloads[169], 8785 }, 8786 { 8787 /* [28] */ 8788 /* fn fract(f32) -> f32 */ 8789 /* fn fract<N : num>(vec<N, f32>) -> vec<N, f32> */ 8790 /* num overloads */ 2, 8791 /* overloads */ &kOverloads[171], 8792 }, 8793 { 8794 /* [29] */ 8795 /* fn frexp(f32) -> __frexp_result */ 8796 /* fn frexp<N : num>(vec<N, f32>) -> __frexp_result_vec<N> */ 8797 /* num overloads */ 2, 8798 /* overloads */ &kOverloads[173], 8799 }, 8800 { 8801 /* [30] */ 8802 /* fn fwidth(f32) -> f32 */ 8803 /* fn fwidth<N : num>(vec<N, f32>) -> vec<N, f32> */ 8804 /* num overloads */ 2, 8805 /* overloads */ &kOverloads[175], 8806 }, 8807 { 8808 /* [31] */ 8809 /* fn fwidthCoarse(f32) -> f32 */ 8810 /* fn fwidthCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */ 8811 /* num overloads */ 2, 8812 /* overloads */ &kOverloads[177], 8813 }, 8814 { 8815 /* [32] */ 8816 /* fn fwidthFine(f32) -> f32 */ 8817 /* fn fwidthFine<N : num>(vec<N, f32>) -> vec<N, f32> */ 8818 /* num overloads */ 2, 8819 /* overloads */ &kOverloads[179], 8820 }, 8821 { 8822 /* [33] */ 8823 /* fn ignore<T>(T) */ 8824 /* num overloads */ 1, 8825 /* overloads */ &kOverloads[251], 8826 }, 8827 { 8828 /* [34] */ 8829 /* fn inverseSqrt(f32) -> f32 */ 8830 /* fn inverseSqrt<N : num>(vec<N, f32>) -> vec<N, f32> */ 8831 /* num overloads */ 2, 8832 /* overloads */ &kOverloads[183], 8833 }, 8834 { 8835 /* [35] */ 8836 /* fn isFinite(f32) -> bool */ 8837 /* fn isFinite<N : num>(vec<N, f32>) -> vec<N, bool> */ 8838 /* num overloads */ 2, 8839 /* overloads */ &kOverloads[185], 8840 }, 8841 { 8842 /* [36] */ 8843 /* fn isInf(f32) -> bool */ 8844 /* fn isInf<N : num>(vec<N, f32>) -> vec<N, bool> */ 8845 /* num overloads */ 2, 8846 /* overloads */ &kOverloads[187], 8847 }, 8848 { 8849 /* [37] */ 8850 /* fn isNan(f32) -> bool */ 8851 /* fn isNan<N : num>(vec<N, f32>) -> vec<N, bool> */ 8852 /* num overloads */ 2, 8853 /* overloads */ &kOverloads[189], 8854 }, 8855 { 8856 /* [38] */ 8857 /* fn isNormal(f32) -> bool */ 8858 /* fn isNormal<N : num>(vec<N, f32>) -> vec<N, bool> */ 8859 /* num overloads */ 2, 8860 /* overloads */ &kOverloads[191], 8861 }, 8862 { 8863 /* [39] */ 8864 /* fn ldexp(f32, i32) -> f32 */ 8865 /* fn ldexp<N : num>(vec<N, f32>, vec<N, i32>) -> vec<N, f32> */ 8866 /* num overloads */ 2, 8867 /* overloads */ &kOverloads[193], 8868 }, 8869 { 8870 /* [40] */ 8871 /* fn length(f32) -> f32 */ 8872 /* fn length<N : num>(vec<N, f32>) -> f32 */ 8873 /* num overloads */ 2, 8874 /* overloads */ &kOverloads[195], 8875 }, 8876 { 8877 /* [41] */ 8878 /* fn log(f32) -> f32 */ 8879 /* fn log<N : num>(vec<N, f32>) -> vec<N, f32> */ 8880 /* num overloads */ 2, 8881 /* overloads */ &kOverloads[197], 8882 }, 8883 { 8884 /* [42] */ 8885 /* fn log2(f32) -> f32 */ 8886 /* fn log2<N : num>(vec<N, f32>) -> vec<N, f32> */ 8887 /* num overloads */ 2, 8888 /* overloads */ &kOverloads[199], 8889 }, 8890 { 8891 /* [43] */ 8892 /* fn max<T : fiu32>(T, T) -> T */ 8893 /* fn max<N : num, T : fiu32>(vec<N, T>, vec<N, T>) -> vec<N, T> */ 8894 /* num overloads */ 2, 8895 /* overloads */ &kOverloads[201], 8896 }, 8897 { 8898 /* [44] */ 8899 /* fn min<T : fiu32>(T, T) -> T */ 8900 /* fn min<N : num, T : fiu32>(vec<N, T>, vec<N, T>) -> vec<N, T> */ 8901 /* num overloads */ 2, 8902 /* overloads */ &kOverloads[203], 8903 }, 8904 { 8905 /* [45] */ 8906 /* fn mix(f32, f32, f32) -> f32 */ 8907 /* fn mix<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8908 /* fn mix<N : num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32> */ 8909 /* num overloads */ 3, 8910 /* overloads */ &kOverloads[139], 8911 }, 8912 { 8913 /* [46] */ 8914 /* fn modf(f32) -> __modf_result */ 8915 /* fn modf<N : num>(vec<N, f32>) -> __modf_result_vec<N> */ 8916 /* num overloads */ 2, 8917 /* overloads */ &kOverloads[207], 8918 }, 8919 { 8920 /* [47] */ 8921 /* fn normalize<N : num>(vec<N, f32>) -> vec<N, f32> */ 8922 /* num overloads */ 1, 8923 /* overloads */ &kOverloads[266], 8924 }, 8925 { 8926 /* [48] */ 8927 /* fn pack2x16float(vec2<f32>) -> u32 */ 8928 /* num overloads */ 1, 8929 /* overloads */ &kOverloads[265], 8930 }, 8931 { 8932 /* [49] */ 8933 /* fn pack2x16snorm(vec2<f32>) -> u32 */ 8934 /* num overloads */ 1, 8935 /* overloads */ &kOverloads[264], 8936 }, 8937 { 8938 /* [50] */ 8939 /* fn pack2x16unorm(vec2<f32>) -> u32 */ 8940 /* num overloads */ 1, 8941 /* overloads */ &kOverloads[252], 8942 }, 8943 { 8944 /* [51] */ 8945 /* fn pack4x8snorm(vec4<f32>) -> u32 */ 8946 /* num overloads */ 1, 8947 /* overloads */ &kOverloads[263], 8948 }, 8949 { 8950 /* [52] */ 8951 /* fn pack4x8unorm(vec4<f32>) -> u32 */ 8952 /* num overloads */ 1, 8953 /* overloads */ &kOverloads[262], 8954 }, 8955 { 8956 /* [53] */ 8957 /* fn pow(f32, f32) -> f32 */ 8958 /* fn pow<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8959 /* num overloads */ 2, 8960 /* overloads */ &kOverloads[221], 8961 }, 8962 { 8963 /* [54] */ 8964 /* fn reflect<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 8965 /* num overloads */ 1, 8966 /* overloads */ &kOverloads[261], 8967 }, 8968 { 8969 /* [55] */ 8970 /* fn refract<N : num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32> */ 8971 /* num overloads */ 1, 8972 /* overloads */ &kOverloads[260], 8973 }, 8974 { 8975 /* [56] */ 8976 /* fn reverseBits<T : iu32>(T) -> T */ 8977 /* fn reverseBits<N : num, T : iu32>(vec<N, T>) -> vec<N, T> */ 8978 /* num overloads */ 2, 8979 /* overloads */ &kOverloads[227], 8980 }, 8981 { 8982 /* [57] */ 8983 /* fn round(f32) -> f32 */ 8984 /* fn round<N : num>(vec<N, f32>) -> vec<N, f32> */ 8985 /* num overloads */ 2, 8986 /* overloads */ &kOverloads[229], 8987 }, 8988 { 8989 /* [58] */ 8990 /* fn select<T : scalar>(T, T, bool) -> T */ 8991 /* fn select<T : scalar, N : num>(vec<N, T>, vec<N, T>, bool) -> vec<N, T> */ 8992 /* fn select<N : num, T : scalar>(vec<N, T>, vec<N, T>, vec<N, bool>) -> vec<N, T> */ 8993 /* num overloads */ 3, 8994 /* overloads */ &kOverloads[142], 8995 }, 8996 { 8997 /* [59] */ 8998 /* fn sign(f32) -> f32 */ 8999 /* fn sign<N : num>(vec<N, f32>) -> vec<N, f32> */ 9000 /* num overloads */ 2, 9001 /* overloads */ &kOverloads[233], 9002 }, 9003 { 9004 /* [60] */ 9005 /* fn sin(f32) -> f32 */ 9006 /* fn sin<N : num>(vec<N, f32>) -> vec<N, f32> */ 9007 /* num overloads */ 2, 9008 /* overloads */ &kOverloads[235], 9009 }, 9010 { 9011 /* [61] */ 9012 /* fn sinh(f32) -> f32 */ 9013 /* fn sinh<N : num>(vec<N, f32>) -> vec<N, f32> */ 9014 /* num overloads */ 2, 9015 /* overloads */ &kOverloads[237], 9016 }, 9017 { 9018 /* [62] */ 9019 /* fn smoothStep(f32, f32, f32) -> f32 */ 9020 /* fn smoothStep<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 9021 /* num overloads */ 2, 9022 /* overloads */ &kOverloads[247], 9023 }, 9024 { 9025 /* [63] */ 9026 /* fn sqrt(f32) -> f32 */ 9027 /* fn sqrt<N : num>(vec<N, f32>) -> vec<N, f32> */ 9028 /* num overloads */ 2, 9029 /* overloads */ &kOverloads[241], 9030 }, 9031 { 9032 /* [64] */ 9033 /* fn step(f32, f32) -> f32 */ 9034 /* fn step<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */ 9035 /* num overloads */ 2, 9036 /* overloads */ &kOverloads[243], 9037 }, 9038 { 9039 /* [65] */ 9040 /* fn storageBarrier() */ 9041 /* num overloads */ 1, 9042 /* overloads */ &kOverloads[283], 9043 }, 9044 { 9045 /* [66] */ 9046 /* fn tan(f32) -> f32 */ 9047 /* fn tan<N : num>(vec<N, f32>) -> vec<N, f32> */ 9048 /* num overloads */ 2, 9049 /* overloads */ &kOverloads[147], 9050 }, 9051 { 9052 /* [67] */ 9053 /* fn tanh(f32) -> f32 */ 9054 /* fn tanh<N : num>(vec<N, f32>) -> vec<N, f32> */ 9055 /* num overloads */ 2, 9056 /* overloads */ &kOverloads[245], 9057 }, 9058 { 9059 /* [68] */ 9060 /* fn transpose<M : num, N : num>(mat<M, N, f32>) -> mat<N, M, f32> */ 9061 /* num overloads */ 1, 9062 /* overloads */ &kOverloads[267], 9063 }, 9064 { 9065 /* [69] */ 9066 /* fn trunc(f32) -> f32 */ 9067 /* fn trunc<N : num>(vec<N, f32>) -> vec<N, f32> */ 9068 /* num overloads */ 2, 9069 /* overloads */ &kOverloads[239], 9070 }, 9071 { 9072 /* [70] */ 9073 /* fn unpack2x16float(u32) -> vec2<f32> */ 9074 /* num overloads */ 1, 9075 /* overloads */ &kOverloads[253], 9076 }, 9077 { 9078 /* [71] */ 9079 /* fn unpack2x16snorm(u32) -> vec2<f32> */ 9080 /* num overloads */ 1, 9081 /* overloads */ &kOverloads[254], 9082 }, 9083 { 9084 /* [72] */ 9085 /* fn unpack2x16unorm(u32) -> vec2<f32> */ 9086 /* num overloads */ 1, 9087 /* overloads */ &kOverloads[255], 9088 }, 9089 { 9090 /* [73] */ 9091 /* fn unpack4x8snorm(u32) -> vec4<f32> */ 9092 /* num overloads */ 1, 9093 /* overloads */ &kOverloads[256], 9094 }, 9095 { 9096 /* [74] */ 9097 /* fn unpack4x8unorm(u32) -> vec4<f32> */ 9098 /* num overloads */ 1, 9099 /* overloads */ &kOverloads[257], 9100 }, 9101 { 9102 /* [75] */ 9103 /* fn workgroupBarrier() */ 9104 /* num overloads */ 1, 9105 /* overloads */ &kOverloads[258], 9106 }, 9107 { 9108 /* [76] */ 9109 /* fn textureDimensions<T : fiu32>(texture: texture_1d<T>) -> i32 */ 9110 /* fn textureDimensions<T : fiu32>(texture: texture_1d<T>, level: i32) -> i32 */ 9111 /* fn textureDimensions<T : fiu32>(texture: texture_2d<T>) -> vec2<i32> */ 9112 /* fn textureDimensions<T : fiu32>(texture: texture_2d<T>, level: i32) -> vec2<i32> */ 9113 /* fn textureDimensions<T : fiu32>(texture: texture_2d_array<T>) -> vec2<i32> */ 9114 /* fn textureDimensions<T : fiu32>(texture: texture_2d_array<T>, level: i32) -> vec2<i32> */ 9115 /* fn textureDimensions<T : fiu32>(texture: texture_3d<T>) -> vec3<i32> */ 9116 /* fn textureDimensions<T : fiu32>(texture: texture_3d<T>, level: i32) -> vec3<i32> */ 9117 /* fn textureDimensions<T : fiu32>(texture: texture_cube<T>) -> vec2<i32> */ 9118 /* fn textureDimensions<T : fiu32>(texture: texture_cube<T>, level: i32) -> vec2<i32> */ 9119 /* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>) -> vec2<i32> */ 9120 /* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>, level: i32) -> vec2<i32> */ 9121 /* fn textureDimensions<T : fiu32>(texture: texture_multisampled_2d<T>) -> vec2<i32> */ 9122 /* fn textureDimensions(texture: texture_depth_2d) -> vec2<i32> */ 9123 /* fn textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32> */ 9124 /* fn textureDimensions(texture: texture_depth_2d_array) -> vec2<i32> */ 9125 /* fn textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32> */ 9126 /* fn textureDimensions(texture: texture_depth_cube) -> vec2<i32> */ 9127 /* fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32> */ 9128 /* fn textureDimensions(texture: texture_depth_cube_array) -> vec2<i32> */ 9129 /* fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32> */ 9130 /* fn textureDimensions(texture: texture_depth_multisampled_2d) -> vec2<i32> */ 9131 /* fn textureDimensions<F : texel_format, A : write_only>(texture: texture_storage_1d<F, A>) -> i32 */ 9132 /* fn textureDimensions<F : texel_format, A : write_only>(texture: texture_storage_2d<F, A>) -> vec2<i32> */ 9133 /* fn textureDimensions<F : texel_format, A : write_only>(texture: texture_storage_2d_array<F, A>) -> vec2<i32> */ 9134 /* fn textureDimensions<F : texel_format, A : write_only>(texture: texture_storage_3d<F, A>) -> vec3<i32> */ 9135 /* fn textureDimensions(texture: texture_external) -> vec2<i32> */ 9136 /* num overloads */ 27, 9137 /* overloads */ &kOverloads[0], 9138 }, 9139 { 9140 /* [77] */ 9141 /* fn textureGather<T : fiu32>(component: i32, texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>) -> vec4<T> */ 9142 /* fn textureGather<T : fiu32>(component: i32, texture: texture_2d<T>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<T> */ 9143 /* fn textureGather<T : fiu32>(component: i32, texture: texture_2d_array<T>, sampler: sampler, coords: vec2<f32>, array_index: i32) -> vec4<T> */ 9144 /* fn textureGather<T : fiu32>(component: i32, texture: texture_2d_array<T>, sampler: sampler, coords: vec2<f32>, array_index: i32, offset: vec2<i32>) -> vec4<T> */ 9145 /* fn textureGather<T : fiu32>(component: i32, texture: texture_cube<T>, sampler: sampler, coords: vec3<f32>) -> vec4<T> */ 9146 /* fn textureGather<T : fiu32>(component: i32, texture: texture_cube_array<T>, sampler: sampler, coords: vec3<f32>, array_index: i32) -> vec4<T> */ 9147 /* fn textureGather(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>) -> vec4<f32> */ 9148 /* fn textureGather(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<f32> */ 9149 /* fn textureGather(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32) -> vec4<f32> */ 9150 /* fn textureGather(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32, offset: vec2<i32>) -> vec4<f32> */ 9151 /* fn textureGather(texture: texture_depth_cube, sampler: sampler, coords: vec3<f32>) -> vec4<f32> */ 9152 /* fn textureGather(texture: texture_depth_cube_array, sampler: sampler, coords: vec3<f32>, array_index: i32) -> vec4<f32> */ 9153 /* num overloads */ 12, 9154 /* overloads */ &kOverloads[57], 9155 }, 9156 { 9157 /* [78] */ 9158 /* fn textureGatherCompare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32) -> vec4<f32> */ 9159 /* fn textureGatherCompare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32, offset: vec2<i32>) -> vec4<f32> */ 9160 /* fn textureGatherCompare(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32) -> vec4<f32> */ 9161 /* fn textureGatherCompare(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32, offset: vec2<i32>) -> vec4<f32> */ 9162 /* fn textureGatherCompare(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32) -> vec4<f32> */ 9163 /* fn textureGatherCompare(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3<f32>, array_index: i32, depth_ref: f32) -> vec4<f32> */ 9164 /* num overloads */ 6, 9165 /* overloads */ &kOverloads[116], 9166 }, 9167 { 9168 /* [79] */ 9169 /* fn textureNumLayers<T : fiu32>(texture: texture_2d_array<T>) -> i32 */ 9170 /* fn textureNumLayers<T : fiu32>(texture: texture_cube_array<T>) -> i32 */ 9171 /* fn textureNumLayers(texture: texture_depth_2d_array) -> i32 */ 9172 /* fn textureNumLayers(texture: texture_depth_cube_array) -> i32 */ 9173 /* fn textureNumLayers<F : texel_format, A : write_only>(texture: texture_storage_2d_array<F, A>) -> i32 */ 9174 /* num overloads */ 5, 9175 /* overloads */ &kOverloads[134], 9176 }, 9177 { 9178 /* [80] */ 9179 /* fn textureNumLevels<T : fiu32>(texture: texture_1d<T>) -> i32 */ 9180 /* fn textureNumLevels<T : fiu32>(texture: texture_2d<T>) -> i32 */ 9181 /* fn textureNumLevels<T : fiu32>(texture: texture_2d_array<T>) -> i32 */ 9182 /* fn textureNumLevels<T : fiu32>(texture: texture_3d<T>) -> i32 */ 9183 /* fn textureNumLevels<T : fiu32>(texture: texture_cube<T>) -> i32 */ 9184 /* fn textureNumLevels<T : fiu32>(texture: texture_cube_array<T>) -> i32 */ 9185 /* fn textureNumLevels(texture: texture_depth_2d) -> i32 */ 9186 /* fn textureNumLevels(texture: texture_depth_2d_array) -> i32 */ 9187 /* fn textureNumLevels(texture: texture_depth_cube) -> i32 */ 9188 /* fn textureNumLevels(texture: texture_depth_cube_array) -> i32 */ 9189 /* num overloads */ 10, 9190 /* overloads */ &kOverloads[81], 9191 }, 9192 { 9193 /* [81] */ 9194 /* fn textureNumSamples<T : fiu32>(texture: texture_multisampled_2d<T>) -> i32 */ 9195 /* fn textureNumSamples(texture: texture_depth_multisampled_2d) -> i32 */ 9196 /* num overloads */ 2, 9197 /* overloads */ &kOverloads[213], 9198 }, 9199 { 9200 /* [82] */ 9201 /* fn textureSample(texture: texture_1d<f32>, sampler: sampler, coords: f32) -> vec4<f32> */ 9202 /* fn textureSample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>) -> vec4<f32> */ 9203 /* fn textureSample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> vec4<f32> */ 9204 /* fn textureSample(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32) -> vec4<f32> */ 9205 /* fn textureSample(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, offset: vec2<i32>) -> vec4<f32> */ 9206 /* fn textureSample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>) -> vec4<f32> */ 9207 /* fn textureSample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, offset: vec3<i32>) -> vec4<f32> */ 9208 /* fn textureSample(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>) -> vec4<f32> */ 9209 /* fn textureSample(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32) -> vec4<f32> */ 9210 /* fn textureSample(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>) -> f32 */ 9211 /* fn textureSample(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>, offset: vec2<i32>) -> f32 */ 9212 /* fn textureSample(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32) -> f32 */ 9213 /* fn textureSample(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32, offset: vec2<i32>) -> f32 */ 9214 /* fn textureSample(texture: texture_depth_cube, sampler: sampler, coords: vec3<f32>) -> f32 */ 9215 /* fn textureSample(texture: texture_depth_cube_array, sampler: sampler, coords: vec3<f32>, array_index: i32) -> f32 */ 9216 /* num overloads */ 15, 9217 /* overloads */ &kOverloads[42], 9218 }, 9219 { 9220 /* [83] */ 9221 /* fn textureSampleBias(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, bias: f32) -> vec4<f32> */ 9222 /* fn textureSampleBias(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, bias: f32, offset: vec2<i32>) -> vec4<f32> */ 9223 /* fn textureSampleBias(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, bias: f32) -> vec4<f32> */ 9224 /* fn textureSampleBias(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, bias: f32, offset: vec2<i32>) -> vec4<f32> */ 9225 /* fn textureSampleBias(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, bias: f32) -> vec4<f32> */ 9226 /* fn textureSampleBias(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, bias: f32, offset: vec3<i32>) -> vec4<f32> */ 9227 /* fn textureSampleBias(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, bias: f32) -> vec4<f32> */ 9228 /* fn textureSampleBias(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32, bias: f32) -> vec4<f32> */ 9229 /* num overloads */ 8, 9230 /* overloads */ &kOverloads[108], 9231 }, 9232 { 9233 /* [84] */ 9234 /* fn textureSampleCompare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32) -> f32 */ 9235 /* fn textureSampleCompare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32, offset: vec2<i32>) -> f32 */ 9236 /* fn textureSampleCompare(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32) -> f32 */ 9237 /* fn textureSampleCompare(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32, offset: vec2<i32>) -> f32 */ 9238 /* fn textureSampleCompare(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32) -> f32 */ 9239 /* fn textureSampleCompare(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3<f32>, array_index: i32, depth_ref: f32) -> f32 */ 9240 /* num overloads */ 6, 9241 /* overloads */ &kOverloads[122], 9242 }, 9243 { 9244 /* [85] */ 9245 /* fn textureSampleCompareLevel(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32) -> f32 */ 9246 /* fn textureSampleCompareLevel(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32, offset: vec2<i32>) -> f32 */ 9247 /* fn textureSampleCompareLevel(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32) -> f32 */ 9248 /* fn textureSampleCompareLevel(texture: texture_depth_2d_array, sampler: sampler_comparison, coords: vec2<f32>, array_index: i32, depth_ref: f32, offset: vec2<i32>) -> f32 */ 9249 /* fn textureSampleCompareLevel(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32) -> f32 */ 9250 /* fn textureSampleCompareLevel(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3<f32>, array_index: i32, depth_ref: f32) -> f32 */ 9251 /* num overloads */ 6, 9252 /* overloads */ &kOverloads[128], 9253 }, 9254 { 9255 /* [86] */ 9256 /* fn textureSampleGrad(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, ddx: vec2<f32>, ddy: vec2<f32>) -> vec4<f32> */ 9257 /* fn textureSampleGrad(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, ddx: vec2<f32>, ddy: vec2<f32>, offset: vec2<i32>) -> vec4<f32> */ 9258 /* fn textureSampleGrad(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, ddx: vec2<f32>, ddy: vec2<f32>) -> vec4<f32> */ 9259 /* fn textureSampleGrad(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, ddx: vec2<f32>, ddy: vec2<f32>, offset: vec2<i32>) -> vec4<f32> */ 9260 /* fn textureSampleGrad(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, ddx: vec3<f32>, ddy: vec3<f32>) -> vec4<f32> */ 9261 /* fn textureSampleGrad(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, ddx: vec3<f32>, ddy: vec3<f32>, offset: vec3<i32>) -> vec4<f32> */ 9262 /* fn textureSampleGrad(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, ddx: vec3<f32>, ddy: vec3<f32>) -> vec4<f32> */ 9263 /* fn textureSampleGrad(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32, ddx: vec3<f32>, ddy: vec3<f32>) -> vec4<f32> */ 9264 /* num overloads */ 8, 9265 /* overloads */ &kOverloads[100], 9266 }, 9267 { 9268 /* [87] */ 9269 /* fn textureSampleLevel(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, level: f32) -> vec4<f32> */ 9270 /* fn textureSampleLevel(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, level: f32, offset: vec2<i32>) -> vec4<f32> */ 9271 /* fn textureSampleLevel(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, level: f32) -> vec4<f32> */ 9272 /* fn textureSampleLevel(texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: i32, level: f32, offset: vec2<i32>) -> vec4<f32> */ 9273 /* fn textureSampleLevel(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, level: f32) -> vec4<f32> */ 9274 /* fn textureSampleLevel(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, level: f32, offset: vec3<i32>) -> vec4<f32> */ 9275 /* fn textureSampleLevel(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, level: f32) -> vec4<f32> */ 9276 /* fn textureSampleLevel(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32, level: f32) -> vec4<f32> */ 9277 /* fn textureSampleLevel(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>, level: i32) -> f32 */ 9278 /* fn textureSampleLevel(texture: texture_depth_2d, sampler: sampler, coords: vec2<f32>, level: i32, offset: vec2<i32>) -> f32 */ 9279 /* fn textureSampleLevel(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32, level: i32) -> f32 */ 9280 /* fn textureSampleLevel(texture: texture_depth_2d_array, sampler: sampler, coords: vec2<f32>, array_index: i32, level: i32, offset: vec2<i32>) -> f32 */ 9281 /* fn textureSampleLevel(texture: texture_depth_cube, sampler: sampler, coords: vec3<f32>, level: i32) -> f32 */ 9282 /* fn textureSampleLevel(texture: texture_depth_cube_array, sampler: sampler, coords: vec3<f32>, array_index: i32, level: i32) -> f32 */ 9283 /* fn textureSampleLevel(texture: texture_external, sampler: sampler, coords: vec2<f32>) -> vec4<f32> */ 9284 /* num overloads */ 15, 9285 /* overloads */ &kOverloads[27], 9286 }, 9287 { 9288 /* [88] */ 9289 /* fn textureStore(texture: texture_storage_1d<f32_texel_format, write>, coords: i32, value: vec4<f32>) */ 9290 /* fn textureStore(texture: texture_storage_2d<f32_texel_format, write>, coords: vec2<i32>, value: vec4<f32>) */ 9291 /* fn textureStore(texture: texture_storage_2d_array<f32_texel_format, write>, coords: vec2<i32>, array_index: i32, value: vec4<f32>) */ 9292 /* fn textureStore(texture: texture_storage_3d<f32_texel_format, write>, coords: vec3<i32>, value: vec4<f32>) */ 9293 /* fn textureStore(texture: texture_storage_1d<i32_texel_format, write>, coords: i32, value: vec4<i32>) */ 9294 /* fn textureStore(texture: texture_storage_2d<i32_texel_format, write>, coords: vec2<i32>, value: vec4<i32>) */ 9295 /* fn textureStore(texture: texture_storage_2d_array<i32_texel_format, write>, coords: vec2<i32>, array_index: i32, value: vec4<i32>) */ 9296 /* fn textureStore(texture: texture_storage_3d<i32_texel_format, write>, coords: vec3<i32>, value: vec4<i32>) */ 9297 /* fn textureStore(texture: texture_storage_1d<u32_texel_format, write>, coords: i32, value: vec4<u32>) */ 9298 /* fn textureStore(texture: texture_storage_2d<u32_texel_format, write>, coords: vec2<i32>, value: vec4<u32>) */ 9299 /* fn textureStore(texture: texture_storage_2d_array<u32_texel_format, write>, coords: vec2<i32>, array_index: i32, value: vec4<u32>) */ 9300 /* fn textureStore(texture: texture_storage_3d<u32_texel_format, write>, coords: vec3<i32>, value: vec4<u32>) */ 9301 /* num overloads */ 12, 9302 /* overloads */ &kOverloads[69], 9303 }, 9304 { 9305 /* [89] */ 9306 /* fn textureLoad<T : fiu32>(texture: texture_1d<T>, coords: i32, level: i32) -> vec4<T> */ 9307 /* fn textureLoad<T : fiu32>(texture: texture_2d<T>, coords: vec2<i32>, level: i32) -> vec4<T> */ 9308 /* fn textureLoad<T : fiu32>(texture: texture_2d_array<T>, coords: vec2<i32>, array_index: i32, level: i32) -> vec4<T> */ 9309 /* fn textureLoad<T : fiu32>(texture: texture_3d<T>, coords: vec3<i32>, level: i32) -> vec4<T> */ 9310 /* fn textureLoad<T : fiu32>(texture: texture_multisampled_2d<T>, coords: vec2<i32>, sample_index: i32) -> vec4<T> */ 9311 /* fn textureLoad(texture: texture_depth_2d, coords: vec2<i32>, level: i32) -> f32 */ 9312 /* fn textureLoad(texture: texture_depth_2d_array, coords: vec2<i32>, array_index: i32, level: i32) -> f32 */ 9313 /* fn textureLoad(texture: texture_depth_multisampled_2d, coords: vec2<i32>, sample_index: i32) -> f32 */ 9314 /* fn textureLoad(texture: texture_external, coords: vec2<i32>) -> vec4<f32> */ 9315 /* num overloads */ 9, 9316 /* overloads */ &kOverloads[91], 9317 }, 9318 { 9319 /* [90] */ 9320 /* fn atomicLoad<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>) -> T */ 9321 /* num overloads */ 1, 9322 /* overloads */ &kOverloads[273], 9323 }, 9324 { 9325 /* [91] */ 9326 /* fn atomicStore<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) */ 9327 /* num overloads */ 1, 9328 /* overloads */ &kOverloads[274], 9329 }, 9330 { 9331 /* [92] */ 9332 /* fn atomicAdd<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9333 /* num overloads */ 1, 9334 /* overloads */ &kOverloads[275], 9335 }, 9336 { 9337 /* [93] */ 9338 /* fn atomicSub<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9339 /* num overloads */ 1, 9340 /* overloads */ &kOverloads[276], 9341 }, 9342 { 9343 /* [94] */ 9344 /* fn atomicMax<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9345 /* num overloads */ 1, 9346 /* overloads */ &kOverloads[277], 9347 }, 9348 { 9349 /* [95] */ 9350 /* fn atomicMin<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9351 /* num overloads */ 1, 9352 /* overloads */ &kOverloads[278], 9353 }, 9354 { 9355 /* [96] */ 9356 /* fn atomicAnd<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9357 /* num overloads */ 1, 9358 /* overloads */ &kOverloads[279], 9359 }, 9360 { 9361 /* [97] */ 9362 /* fn atomicOr<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9363 /* num overloads */ 1, 9364 /* overloads */ &kOverloads[280], 9365 }, 9366 { 9367 /* [98] */ 9368 /* fn atomicXor<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9369 /* num overloads */ 1, 9370 /* overloads */ &kOverloads[281], 9371 }, 9372 { 9373 /* [99] */ 9374 /* fn atomicExchange<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */ 9375 /* num overloads */ 1, 9376 /* overloads */ &kOverloads[282], 9377 }, 9378 { 9379 /* [100] */ 9380 /* fn atomicCompareExchangeWeak<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T, T) -> vec2<T> */ 9381 /* num overloads */ 1, 9382 /* overloads */ &kOverloads[259], 9383 }, 9384}; 9385 9386// clang-format on 9387