From 543dd18d3c517fa80f9fca3523c133a301e0032a Mon Sep 17 00:00:00 2001 From: Ben Clayton Date: Fri, 18 Nov 2022 11:17:41 +0000 Subject: [PATCH] tint: Remove textureSampleLevel(texture_external) Fixed: tint:1671 Change-Id: Iafed8d3ddbc99b80bbe70d3fc3847ac7a25c5e37 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/110101 Commit-Queue: Ben Clayton Kokoro: Kokoro Reviewed-by: Dan Sinclair Commit-Queue: Ben Clayton --- docs/tint/origin-trial-changes.md | 4 + src/tint/intrinsics.def | 1 - src/tint/resolver/intrinsic_table.inl | 4446 ++++++++--------- .../transform/multiplanar_external_texture.cc | 59 - .../multiplanar_external_texture_test.cc | 476 -- .../literal/textureSampleLevel/979816.wgsl | 45 - .../979816.wgsl.expected.dxc.hlsl | 116 - .../979816.wgsl.expected.fxc.hlsl | 116 - .../979816.wgsl.expected.glsl | 200 - .../979816.wgsl.expected.msl | 93 - .../979816.wgsl.expected.spvasm | 259 - .../979816.wgsl.expected.wgsl | 27 - .../gen/var/textureSampleLevel/979816.wgsl | 46 - .../979816.wgsl.expected.dxc.hlsl | 117 - .../979816.wgsl.expected.fxc.hlsl | 117 - .../979816.wgsl.expected.glsl | 203 - .../979816.wgsl.expected.msl | 94 - .../979816.wgsl.expected.spvasm | 265 - .../979816.wgsl.expected.wgsl | 28 - 19 files changed, 2213 insertions(+), 4499 deletions(-) delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.dxc.hlsl delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.fxc.hlsl delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.glsl delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.msl delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.spvasm delete mode 100644 test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.wgsl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.dxc.hlsl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.fxc.hlsl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.glsl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.msl delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.spvasm delete mode 100644 test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.wgsl diff --git a/docs/tint/origin-trial-changes.md b/docs/tint/origin-trial-changes.md index a55e39f961..fdf16b08f1 100644 --- a/docs/tint/origin-trial-changes.md +++ b/docs/tint/origin-trial-changes.md @@ -2,6 +2,10 @@ ## Changes for M110 +### Breaking changes + +* The `textureSampleLevel()` overload for `texture_external` has been removed. Use `textureSampleBaseClampToEdge()`. [tint:1671](crbug.com/tint/1671) + ### Deprecated Features * The `sig` member of the return type of `frexp()` has been renamed to `fract`. [tint:1757](crbug.com/tint/1757) diff --git a/src/tint/intrinsics.def b/src/tint/intrinsics.def index d6fdfd4044..7d51d76dd0 100644 --- a/src/tint/intrinsics.def +++ b/src/tint/intrinsics.def @@ -675,7 +675,6 @@ fn textureSampleLevel(texture: texture_depth_2d_array, sampler fn textureSampleLevel(texture: texture_depth_2d_array, sampler: sampler, coords: vec2, array_index: A, level: L, @const offset: vec2) -> f32 fn textureSampleLevel(texture: texture_depth_cube, sampler: sampler, coords: vec3, level: L) -> f32 fn textureSampleLevel(texture: texture_depth_cube_array,sampler: sampler, coords: vec3, array_index: A, level: L) -> f32 -@deprecated fn textureSampleLevel(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 fn textureSampleBaseClampToEdge(texture: texture_2d, sampler: sampler, coords: vec2) -> vec4 fn textureSampleBaseClampToEdge(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 fn textureStore(texture: texture_storage_1d, coords: C, value: vec4) diff --git a/src/tint/resolver/intrinsic_table.inl b/src/tint/resolver/intrinsic_table.inl index 71bd1d4e0e..3b0b88d0d6 100644 --- a/src/tint/resolver/intrinsic_table.inl +++ b/src/tint/resolver/intrinsic_table.inl @@ -5586,7 +5586,7 @@ constexpr ParameterInfo kParameters[] = { { /* [519] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[235], + /* matcher indices */ &kMatcherIndices[138], }, { /* [520] */ @@ -5601,7 +5601,7 @@ constexpr ParameterInfo kParameters[] = { { /* [522] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[138], + /* matcher indices */ &kMatcherIndices[235], }, { /* [523] */ @@ -5616,27 +5616,27 @@ constexpr ParameterInfo kParameters[] = { { /* [525] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[235], + /* matcher indices */ &kMatcherIndices[60], }, { /* [526] */ - /* usage */ ParameterUsage::kSampler, - /* matcher indices */ &kMatcherIndices[236], + /* usage */ ParameterUsage::kCoords, + /* matcher indices */ &kMatcherIndices[3], }, { /* [527] */ - /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[108], + /* usage */ ParameterUsage::kValue, + /* matcher indices */ &kMatcherIndices[110], }, { /* [528] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[60], + /* matcher indices */ &kMatcherIndices[63], }, { /* [529] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[150], }, { /* [530] */ @@ -5646,12 +5646,12 @@ constexpr ParameterInfo kParameters[] = { { /* [531] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[63], + /* matcher indices */ &kMatcherIndices[69], }, { /* [532] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [533] */ @@ -5661,27 +5661,27 @@ constexpr ParameterInfo kParameters[] = { { /* [534] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[69], + /* matcher indices */ &kMatcherIndices[72], }, { /* [535] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[3], }, { /* [536] */ /* usage */ ParameterUsage::kValue, - /* matcher indices */ &kMatcherIndices[110], + /* matcher indices */ &kMatcherIndices[152], }, { /* [537] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[72], + /* matcher indices */ &kMatcherIndices[75], }, { /* [538] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[150], }, { /* [539] */ @@ -5691,12 +5691,12 @@ constexpr ParameterInfo kParameters[] = { { /* [540] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[75], + /* matcher indices */ &kMatcherIndices[81], }, { /* [541] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [542] */ @@ -5706,27 +5706,27 @@ constexpr ParameterInfo kParameters[] = { { /* [543] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[81], + /* matcher indices */ &kMatcherIndices[84], }, { /* [544] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[3], }, { /* [545] */ /* usage */ ParameterUsage::kValue, - /* matcher indices */ &kMatcherIndices[152], + /* matcher indices */ &kMatcherIndices[154], }, { /* [546] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[84], + /* matcher indices */ &kMatcherIndices[87], }, { /* [547] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[150], }, { /* [548] */ @@ -5736,12 +5736,12 @@ constexpr ParameterInfo kParameters[] = { { /* [549] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[87], + /* matcher indices */ &kMatcherIndices[93], }, { /* [550] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[144], }, { /* [551] */ @@ -5751,27 +5751,27 @@ constexpr ParameterInfo kParameters[] = { { /* [552] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[93], + /* matcher indices */ &kMatcherIndices[112], }, { /* [553] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[144], + /* matcher indices */ &kMatcherIndices[16], }, { /* [554] */ - /* usage */ ParameterUsage::kValue, - /* matcher indices */ &kMatcherIndices[154], + /* usage */ ParameterUsage::kLevel, + /* matcher indices */ &kMatcherIndices[24], }, { /* [555] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[112], + /* matcher indices */ &kMatcherIndices[114], }, { /* [556] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[16], + /* matcher indices */ &kMatcherIndices[156], }, { /* [557] */ @@ -5781,12 +5781,12 @@ constexpr ParameterInfo kParameters[] = { { /* [558] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[114], + /* matcher indices */ &kMatcherIndices[120], }, { /* [559] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[156], + /* matcher indices */ &kMatcherIndices[158], }, { /* [560] */ @@ -5796,37 +5796,37 @@ constexpr ParameterInfo kParameters[] = { { /* [561] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[120], + /* matcher indices */ &kMatcherIndices[128], }, { /* [562] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[158], + /* matcher indices */ &kMatcherIndices[156], }, { /* [563] */ - /* usage */ ParameterUsage::kLevel, + /* usage */ ParameterUsage::kSampleIndex, /* matcher indices */ &kMatcherIndices[24], }, { /* [564] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[128], + /* matcher indices */ &kMatcherIndices[230], }, { /* [565] */ /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[156], + /* matcher indices */ &kMatcherIndices[150], }, { /* [566] */ - /* usage */ ParameterUsage::kSampleIndex, - /* matcher indices */ &kMatcherIndices[24], + /* usage */ ParameterUsage::kLevel, + /* matcher indices */ &kMatcherIndices[16], }, { /* [567] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[230], + /* matcher indices */ &kMatcherIndices[234], }, { /* [568] */ @@ -5835,64 +5835,64 @@ constexpr ParameterInfo kParameters[] = { }, { /* [569] */ - /* usage */ ParameterUsage::kLevel, - /* matcher indices */ &kMatcherIndices[16], - }, - { - /* [570] */ - /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[234], - }, - { - /* [571] */ - /* usage */ ParameterUsage::kCoords, - /* matcher indices */ &kMatcherIndices[150], - }, - { - /* [572] */ /* usage */ ParameterUsage::kSampleIndex, /* matcher indices */ &kMatcherIndices[16], }, { - /* [573] */ + /* [570] */ /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[5], }, { - /* [574] */ + /* [571] */ /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[3], }, { - /* [575] */ + /* [572] */ /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[3], }, { - /* [576] */ + /* [573] */ /* usage */ ParameterUsage::kX, /* matcher indices */ &kMatcherIndices[3], }, { - /* [577] */ + /* [574] */ /* usage */ ParameterUsage::kY, /* matcher indices */ &kMatcherIndices[3], }, { - /* [578] */ + /* [575] */ /* usage */ ParameterUsage::kZ, /* matcher indices */ &kMatcherIndices[3], }, { - /* [579] */ + /* [576] */ /* usage */ ParameterUsage::kXy, /* matcher indices */ &kMatcherIndices[150], }, { - /* [580] */ + /* [577] */ /* usage */ ParameterUsage::kZ, /* matcher indices */ &kMatcherIndices[3], }, + { + /* [578] */ + /* usage */ ParameterUsage::kW, + /* matcher indices */ &kMatcherIndices[3], + }, + { + /* [579] */ + /* usage */ ParameterUsage::kX, + /* matcher indices */ &kMatcherIndices[3], + }, + { + /* [580] */ + /* usage */ ParameterUsage::kYz, + /* matcher indices */ &kMatcherIndices[150], + }, { /* [581] */ /* usage */ ParameterUsage::kW, @@ -5905,113 +5905,113 @@ constexpr ParameterInfo kParameters[] = { }, { /* [583] */ - /* usage */ ParameterUsage::kYz, - /* matcher indices */ &kMatcherIndices[150], - }, - { - /* [584] */ - /* usage */ ParameterUsage::kW, - /* matcher indices */ &kMatcherIndices[3], - }, - { - /* [585] */ - /* usage */ ParameterUsage::kX, - /* matcher indices */ &kMatcherIndices[3], - }, - { - /* [586] */ /* usage */ ParameterUsage::kY, /* matcher indices */ &kMatcherIndices[3], }, { - /* [587] */ + /* [584] */ /* usage */ ParameterUsage::kZw, /* matcher indices */ &kMatcherIndices[150], }, + { + /* [585] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[150], + }, + { + /* [586] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[150], + }, + { + /* [587] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[150], + }, { /* [588] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [589] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [590] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [591] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[130], }, { /* [592] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[130], }, { /* [593] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[130], }, { /* [594] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[3], }, { /* [595] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[3], }, { /* [596] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[30], }, { /* [597] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [598] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[102], }, { /* [599] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[102], }, { /* [600] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [601] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[3], }, { /* [602] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[30], }, { /* [603] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [604] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [605] */ @@ -6021,17 +6021,17 @@ constexpr ParameterInfo kParameters[] = { { /* [606] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [607] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [608] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [609] */ @@ -6041,42 +6041,42 @@ constexpr ParameterInfo kParameters[] = { { /* [610] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[3], }, { /* [611] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[9], }, { /* [612] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[30], }, { /* [613] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[42], }, { /* [614] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[9], + /* matcher indices */ &kMatcherIndices[3], }, { /* [615] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [616] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[42], + /* matcher indices */ &kMatcherIndices[30], }, { /* [617] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [618] */ @@ -6086,7 +6086,7 @@ constexpr ParameterInfo kParameters[] = { { /* [619] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [620] */ @@ -6096,7 +6096,7 @@ constexpr ParameterInfo kParameters[] = { { /* [621] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [622] */ @@ -6106,7 +6106,7 @@ constexpr ParameterInfo kParameters[] = { { /* [623] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [624] */ @@ -6116,12 +6116,12 @@ constexpr ParameterInfo kParameters[] = { { /* [625] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [626] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [627] */ @@ -6131,12 +6131,12 @@ constexpr ParameterInfo kParameters[] = { { /* [628] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [629] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [630] */ @@ -6146,207 +6146,207 @@ constexpr ParameterInfo kParameters[] = { { /* [631] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [632] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], - }, - { - /* [633] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], - }, - { - /* [634] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], - }, - { - /* [635] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[112], }, { - /* [636] */ + /* [633] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [637] */ + /* [634] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[114], }, { - /* [638] */ + /* [635] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [639] */ + /* [636] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[118], }, { - /* [640] */ + /* [637] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [641] */ + /* [638] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[120], }, { - /* [642] */ + /* [639] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [643] */ + /* [640] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[124], }, { - /* [644] */ + /* [641] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [645] */ + /* [642] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[126], }, { - /* [646] */ + /* [643] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[16], }, { - /* [647] */ + /* [644] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[230], }, { - /* [648] */ + /* [645] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[3], }, { - /* [649] */ + /* [646] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[231], }, { - /* [650] */ + /* [647] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[3], }, { - /* [651] */ + /* [648] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[232], }, { - /* [652] */ + /* [649] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[3], }, { - /* [653] */ + /* [650] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[233], }, { - /* [654] */ + /* [651] */ /* usage */ ParameterUsage::kLevel, /* matcher indices */ &kMatcherIndices[3], }, { - /* [655] */ + /* [652] */ /* usage */ ParameterUsage::kTexture, /* matcher indices */ &kMatcherIndices[235], }, { - /* [656] */ + /* [653] */ /* usage */ ParameterUsage::kCoords, /* matcher indices */ &kMatcherIndices[150], }, { - /* [657] */ + /* [654] */ /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[5], }, + { + /* [655] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[3], + }, + { + /* [656] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[5], + }, + { + /* [657] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[3], + }, { /* [658] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [659] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [660] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [661] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [662] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [663] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [664] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [665] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [666] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [667] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [668] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [669] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [670] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[5], }, { /* [671] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [672] */ @@ -6356,32 +6356,32 @@ constexpr ParameterInfo kParameters[] = { { /* [673] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[3], }, { /* [674] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [675] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [676] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [677] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [678] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [679] */ @@ -6391,47 +6391,47 @@ constexpr ParameterInfo kParameters[] = { { /* [680] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[14], }, { /* [681] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[14], }, { /* [682] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [683] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[3], }, { /* [684] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[30], }, { /* [685] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [686] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [687] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [688] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [689] */ @@ -6441,47 +6441,47 @@ constexpr ParameterInfo kParameters[] = { { /* [690] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[14], }, { /* [691] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[14], }, { /* [692] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [693] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[3], }, { /* [694] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[30], }, { /* [695] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [696] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [697] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [698] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [699] */ @@ -6496,12 +6496,12 @@ constexpr ParameterInfo kParameters[] = { { /* [701] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[14], }, { /* [702] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[14], }, { /* [703] */ @@ -6516,12 +6516,12 @@ constexpr ParameterInfo kParameters[] = { { /* [705] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[30], }, { /* [706] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[96], }, { /* [707] */ @@ -6531,47 +6531,47 @@ constexpr ParameterInfo kParameters[] = { { /* [708] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[22], }, { /* [709] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[96], + /* matcher indices */ &kMatcherIndices[18], }, { /* [710] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[3], }, { /* [711] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[22], + /* matcher indices */ &kMatcherIndices[3], }, { /* [712] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[18], + /* matcher indices */ &kMatcherIndices[30], }, { /* [713] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [714] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [715] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [716] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [717] */ @@ -6596,22 +6596,22 @@ constexpr ParameterInfo kParameters[] = { { /* [721] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [722] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [723] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [724] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [725] */ @@ -6636,102 +6636,102 @@ constexpr ParameterInfo kParameters[] = { { /* [729] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [730] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[35], }, { /* [731] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [732] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[33], }, { /* [733] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[33], }, { /* [734] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [735] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[3], }, { /* [736] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[30], }, { /* [737] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [738] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[35], }, { /* [739] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [740] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[33], }, { /* [741] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[33], }, { /* [742] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [743] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[3], }, { /* [744] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[30], }, { /* [745] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [746] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[35], }, { /* [747] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [748] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [749] */ @@ -6741,22 +6741,22 @@ constexpr ParameterInfo kParameters[] = { { /* [750] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [751] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [752] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[30], }, { /* [753] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [754] */ @@ -6766,7 +6766,7 @@ constexpr ParameterInfo kParameters[] = { { /* [755] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [756] */ @@ -6776,7 +6776,7 @@ constexpr ParameterInfo kParameters[] = { { /* [757] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [758] */ @@ -6786,7 +6786,7 @@ constexpr ParameterInfo kParameters[] = { { /* [759] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [760] */ @@ -6796,7 +6796,7 @@ constexpr ParameterInfo kParameters[] = { { /* [761] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [762] */ @@ -6806,7 +6806,7 @@ constexpr ParameterInfo kParameters[] = { { /* [763] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [764] */ @@ -6816,7 +6816,7 @@ constexpr ParameterInfo kParameters[] = { { /* [765] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [766] */ @@ -6826,7 +6826,7 @@ constexpr ParameterInfo kParameters[] = { { /* [767] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [768] */ @@ -6836,7 +6836,7 @@ constexpr ParameterInfo kParameters[] = { { /* [769] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [770] */ @@ -6846,7 +6846,7 @@ constexpr ParameterInfo kParameters[] = { { /* [771] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [772] */ @@ -6856,7 +6856,7 @@ constexpr ParameterInfo kParameters[] = { { /* [773] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [774] */ @@ -6866,7 +6866,7 @@ constexpr ParameterInfo kParameters[] = { { /* [775] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [776] */ @@ -6876,517 +6876,517 @@ constexpr ParameterInfo kParameters[] = { { /* [777] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[99], }, { /* [778] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[3], }, { /* [779] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [780] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[99], + /* matcher indices */ &kMatcherIndices[30], }, { /* [781] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[99], }, { /* [782] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[3], }, { /* [783] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [784] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[99], + /* matcher indices */ &kMatcherIndices[30], }, { /* [785] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], - }, - { - /* [786] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], - }, - { - /* [787] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], - }, - { - /* [788] */ - /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[99], }, { - /* [789] */ + /* [786] */ /* usage */ ParameterUsage::kX, /* matcher indices */ &kMatcherIndices[3], }, { - /* [790] */ + /* [787] */ /* usage */ ParameterUsage::kY, /* matcher indices */ &kMatcherIndices[3], }, { - /* [791] */ + /* [788] */ /* usage */ ParameterUsage::kXy, /* matcher indices */ &kMatcherIndices[150], }, { - /* [792] */ + /* [789] */ /* usage */ ParameterUsage::kZ, /* matcher indices */ &kMatcherIndices[3], }, { - /* [793] */ + /* [790] */ /* usage */ ParameterUsage::kX, /* matcher indices */ &kMatcherIndices[3], }, { - /* [794] */ + /* [791] */ /* usage */ ParameterUsage::kYz, /* matcher indices */ &kMatcherIndices[150], }, { - /* [795] */ + /* [792] */ /* usage */ ParameterUsage::kXy, /* matcher indices */ &kMatcherIndices[150], }, { - /* [796] */ + /* [793] */ /* usage */ ParameterUsage::kZw, /* matcher indices */ &kMatcherIndices[150], }, { - /* [797] */ + /* [794] */ /* usage */ ParameterUsage::kXyz, /* matcher indices */ &kMatcherIndices[102], }, { - /* [798] */ + /* [795] */ /* usage */ ParameterUsage::kW, /* matcher indices */ &kMatcherIndices[3], }, { - /* [799] */ + /* [796] */ /* usage */ ParameterUsage::kX, /* matcher indices */ &kMatcherIndices[3], }, { - /* [800] */ + /* [797] */ /* usage */ ParameterUsage::kZyw, /* matcher indices */ &kMatcherIndices[102], }, + { + /* [798] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[150], + }, + { + /* [799] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[150], + }, + { + /* [800] */ + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[102], + }, { /* [801] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[102], }, { /* [802] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[130], }, { /* [803] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[130], }, { /* [804] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[3], }, { /* [805] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[30], }, { /* [806] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[3], }, { /* [807] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [808] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [809] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [810] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [811] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[33], }, { /* [812] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[35], }, { /* [813] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[33], }, { /* [814] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[0], }, { /* [815] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [816] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[30], }, { /* [817] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[0], + /* matcher indices */ &kMatcherIndices[3], }, { /* [818] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [819] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [820] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [821] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [822] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [823] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [824] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [825] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [826] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [827] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [828] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [829] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [830] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [831] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [832] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [833] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [834] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [835] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [836] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [837] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[10], }, { /* [838] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[38], }, { /* [839] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[36], }, { /* [840] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[10], + /* matcher indices */ &kMatcherIndices[38], }, { /* [841] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [842] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[38], }, { /* [843] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [844] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[38], }, { /* [845] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [846] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[38], }, { /* [847] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [848] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[38], }, { /* [849] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [850] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[3], }, { /* [851] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[30], }, { /* [852] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[3], }, { /* [853] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [854] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [855] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [856] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [857] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [858] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [859] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [860] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [861] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [862] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [863] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [864] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[38], }, { /* [865] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[36], }, { /* [866] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[38], }, { /* [867] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [868] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[38], }, { /* [869] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[36], }, { /* [870] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[3], }, { /* [871] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[30], }, { /* [872] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[3], }, { /* [873] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [874] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [875] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [876] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [877] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [878] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [879] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [880] */ @@ -7396,142 +7396,142 @@ constexpr ParameterInfo kParameters[] = { { /* [881] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[108], }, { /* [882] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[108], }, { /* [883] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[108], }, { /* [884] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[108], + /* matcher indices */ &kMatcherIndices[110], }, { /* [885] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[108], + /* matcher indices */ &kMatcherIndices[110], }, { /* [886] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[108], + /* matcher indices */ &kMatcherIndices[38], }, { /* [887] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[110], + /* matcher indices */ &kMatcherIndices[36], }, { /* [888] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[110], + /* matcher indices */ &kMatcherIndices[3], }, { /* [889] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[30], }, { /* [890] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[36], + /* matcher indices */ &kMatcherIndices[3], }, { /* [891] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [892] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [893] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [894] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [895] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [896] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [897] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [898] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [899] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [900] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [901] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [902] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [903] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [904] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [905] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [906] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[3], }, { /* [907] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [908] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[14], }, { /* [909] */ @@ -7546,17 +7546,17 @@ constexpr ParameterInfo kParameters[] = { { /* [911] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[14], + /* matcher indices */ &kMatcherIndices[101], }, { /* [912] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[101], }, { /* [913] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [914] */ @@ -7570,193 +7570,193 @@ constexpr ParameterInfo kParameters[] = { }, { /* [916] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* usage */ ParameterUsage::kTexture, + /* matcher indices */ &kMatcherIndices[112], }, { /* [917] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* usage */ ParameterUsage::kTexture, + /* matcher indices */ &kMatcherIndices[114], }, { /* [918] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* usage */ ParameterUsage::kTexture, + /* matcher indices */ &kMatcherIndices[118], }, { /* [919] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[112], + /* matcher indices */ &kMatcherIndices[120], }, { /* [920] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[114], + /* matcher indices */ &kMatcherIndices[124], }, { /* [921] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[118], + /* matcher indices */ &kMatcherIndices[126], }, { /* [922] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[120], + /* matcher indices */ &kMatcherIndices[128], }, { /* [923] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[124], + /* matcher indices */ &kMatcherIndices[230], }, { /* [924] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[126], + /* matcher indices */ &kMatcherIndices[231], }, { /* [925] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[128], + /* matcher indices */ &kMatcherIndices[232], }, { /* [926] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[230], + /* matcher indices */ &kMatcherIndices[233], }, { /* [927] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[231], + /* matcher indices */ &kMatcherIndices[234], }, { /* [928] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[232], + /* matcher indices */ &kMatcherIndices[48], }, { /* [929] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[233], + /* matcher indices */ &kMatcherIndices[51], }, { /* [930] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[234], + /* matcher indices */ &kMatcherIndices[54], }, { /* [931] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[48], + /* matcher indices */ &kMatcherIndices[57], }, { /* [932] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[51], + /* matcher indices */ &kMatcherIndices[235], }, { /* [933] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[54], + /* matcher indices */ &kMatcherIndices[118], }, { /* [934] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[57], + /* matcher indices */ &kMatcherIndices[126], }, { /* [935] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[235], + /* matcher indices */ &kMatcherIndices[231], }, { /* [936] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[118], + /* matcher indices */ &kMatcherIndices[233], }, { /* [937] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[126], + /* matcher indices */ &kMatcherIndices[54], }, { /* [938] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[231], + /* matcher indices */ &kMatcherIndices[112], }, { /* [939] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[233], + /* matcher indices */ &kMatcherIndices[114], }, { /* [940] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[54], + /* matcher indices */ &kMatcherIndices[118], }, { /* [941] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[112], + /* matcher indices */ &kMatcherIndices[120], }, { /* [942] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[114], + /* matcher indices */ &kMatcherIndices[124], }, { /* [943] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[118], + /* matcher indices */ &kMatcherIndices[126], }, { /* [944] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[120], + /* matcher indices */ &kMatcherIndices[230], }, { /* [945] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[124], + /* matcher indices */ &kMatcherIndices[231], }, { /* [946] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[126], + /* matcher indices */ &kMatcherIndices[232], }, { /* [947] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[230], + /* matcher indices */ &kMatcherIndices[233], }, { /* [948] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[231], + /* matcher indices */ &kMatcherIndices[128], }, { /* [949] */ /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[232], + /* matcher indices */ &kMatcherIndices[234], }, { /* [950] */ - /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[233], + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[5], }, { /* [951] */ - /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[128], + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[3], }, { /* [952] */ - /* usage */ ParameterUsage::kTexture, - /* matcher indices */ &kMatcherIndices[234], + /* usage */ ParameterUsage::kNone, + /* matcher indices */ &kMatcherIndices[35], }, { /* [953] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[5], + /* matcher indices */ &kMatcherIndices[33], }, { /* [954] */ @@ -7766,22 +7766,22 @@ constexpr ParameterInfo kParameters[] = { { /* [955] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[30], }, { /* [956] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[33], + /* matcher indices */ &kMatcherIndices[3], }, { /* [957] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[30], }, { /* [958] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[9], }, { /* [959] */ @@ -7791,67 +7791,67 @@ constexpr ParameterInfo kParameters[] = { { /* [960] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[30], + /* matcher indices */ &kMatcherIndices[101], }, { /* [961] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[9], + /* matcher indices */ &kMatcherIndices[3], }, { /* [962] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[38], }, { /* [963] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[101], + /* matcher indices */ &kMatcherIndices[3], }, { /* [964] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[1], }, { /* [965] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[38], + /* matcher indices */ &kMatcherIndices[3], }, { /* [966] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[35], }, { /* [967] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[1], + /* matcher indices */ &kMatcherIndices[3], }, { /* [968] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[150], }, { /* [969] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[35], + /* matcher indices */ &kMatcherIndices[3], }, { /* [970] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[156], }, { /* [971] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[150], + /* matcher indices */ &kMatcherIndices[156], }, { /* [972] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[156], }, { /* [973] */ @@ -7866,27 +7866,27 @@ constexpr ParameterInfo kParameters[] = { { /* [975] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[156], + /* matcher indices */ &kMatcherIndices[102], }, { /* [976] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[156], + /* matcher indices */ &kMatcherIndices[3], }, { /* [977] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[156], + /* matcher indices */ &kMatcherIndices[158], }, { /* [978] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[102], + /* matcher indices */ &kMatcherIndices[158], }, { /* [979] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[158], }, { /* [980] */ @@ -7901,27 +7901,27 @@ constexpr ParameterInfo kParameters[] = { { /* [982] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[158], + /* matcher indices */ &kMatcherIndices[130], }, { /* [983] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[158], + /* matcher indices */ &kMatcherIndices[3], }, { /* [984] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[158], + /* matcher indices */ &kMatcherIndices[170], }, { /* [985] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[130], + /* matcher indices */ &kMatcherIndices[170], }, { /* [986] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[3], + /* matcher indices */ &kMatcherIndices[170], }, { /* [987] */ @@ -7936,150 +7936,135 @@ constexpr ParameterInfo kParameters[] = { { /* [989] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[170], + /* matcher indices */ &kMatcherIndices[176], }, { /* [990] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[170], + /* matcher indices */ &kMatcherIndices[178], }, { /* [991] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[170], + /* matcher indices */ &kMatcherIndices[180], }, { /* [992] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[176], + /* matcher indices */ &kMatcherIndices[182], }, { /* [993] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[178], + /* matcher indices */ &kMatcherIndices[184], }, { /* [994] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[180], + /* matcher indices */ &kMatcherIndices[186], }, { /* [995] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[182], + /* matcher indices */ &kMatcherIndices[188], }, { /* [996] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[184], + /* matcher indices */ &kMatcherIndices[190], }, { /* [997] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[186], + /* matcher indices */ &kMatcherIndices[192], }, { /* [998] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[188], + /* matcher indices */ &kMatcherIndices[194], }, { /* [999] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[190], + /* matcher indices */ &kMatcherIndices[196], }, { /* [1000] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[192], + /* matcher indices */ &kMatcherIndices[198], }, { /* [1001] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[194], + /* matcher indices */ &kMatcherIndices[200], }, { /* [1002] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[196], + /* matcher indices */ &kMatcherIndices[202], }, { /* [1003] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[198], + /* matcher indices */ &kMatcherIndices[204], }, { /* [1004] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[200], + /* matcher indices */ &kMatcherIndices[206], }, { /* [1005] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[202], + /* matcher indices */ &kMatcherIndices[208], }, { /* [1006] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[204], + /* matcher indices */ &kMatcherIndices[210], }, { /* [1007] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[206], + /* matcher indices */ &kMatcherIndices[212], }, { /* [1008] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[208], + /* matcher indices */ &kMatcherIndices[214], }, { /* [1009] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[210], + /* matcher indices */ &kMatcherIndices[216], }, { /* [1010] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[212], + /* matcher indices */ &kMatcherIndices[218], }, { /* [1011] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[214], + /* matcher indices */ &kMatcherIndices[220], }, { /* [1012] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[216], + /* matcher indices */ &kMatcherIndices[222], }, { /* [1013] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[218], + /* matcher indices */ &kMatcherIndices[224], }, { /* [1014] */ /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[220], - }, - { - /* [1015] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[222], - }, - { - /* [1016] */ - /* usage */ ParameterUsage::kNone, - /* matcher indices */ &kMatcherIndices[224], - }, - { - /* [1017] */ - /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[226], }, { - /* [1018] */ + /* [1015] */ /* usage */ ParameterUsage::kNone, /* matcher indices */ &kMatcherIndices[228], }, @@ -8339,7 +8324,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[919], + /* parameters */ &kParameters[916], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8351,7 +8336,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[635], + /* parameters */ &kParameters[632], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8363,7 +8348,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[920], + /* parameters */ &kParameters[917], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8375,7 +8360,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[637], + /* parameters */ &kParameters[634], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8387,7 +8372,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[921], + /* parameters */ &kParameters[918], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8399,7 +8384,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[639], + /* parameters */ &kParameters[636], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8411,7 +8396,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[922], + /* parameters */ &kParameters[919], /* return matcher indices */ &kMatcherIndices[122], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8423,7 +8408,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[641], + /* parameters */ &kParameters[638], /* return matcher indices */ &kMatcherIndices[122], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8435,7 +8420,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[923], + /* parameters */ &kParameters[920], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8447,7 +8432,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[643], + /* parameters */ &kParameters[640], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8459,7 +8444,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[924], + /* parameters */ &kParameters[921], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8471,7 +8456,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[10], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[645], + /* parameters */ &kParameters[642], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8483,7 +8468,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[925], + /* parameters */ &kParameters[922], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8495,7 +8480,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[926], + /* parameters */ &kParameters[923], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8507,7 +8492,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[3], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[647], + /* parameters */ &kParameters[644], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8519,7 +8504,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[927], + /* parameters */ &kParameters[924], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8531,7 +8516,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[3], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[649], + /* parameters */ &kParameters[646], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8543,7 +8528,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[928], + /* parameters */ &kParameters[925], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8555,7 +8540,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[3], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[651], + /* parameters */ &kParameters[648], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8567,7 +8552,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[929], + /* parameters */ &kParameters[926], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8579,7 +8564,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[3], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[653], + /* parameters */ &kParameters[650], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8591,7 +8576,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[930], + /* parameters */ &kParameters[927], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8603,7 +8588,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[6], - /* parameters */ &kParameters[931], + /* parameters */ &kParameters[928], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8615,7 +8600,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[6], - /* parameters */ &kParameters[932], + /* parameters */ &kParameters[929], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8627,7 +8612,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[6], - /* parameters */ &kParameters[933], + /* parameters */ &kParameters[930], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8639,7 +8624,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[6], - /* parameters */ &kParameters[934], + /* parameters */ &kParameters[931], /* return matcher indices */ &kMatcherIndices[122], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8651,7 +8636,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[935], + /* parameters */ &kParameters[932], /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -8838,222 +8823,42 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [42] */ - /* num parameters */ 4, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[387], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [43] */ - /* num parameters */ 5, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[260], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [44] */ - /* num parameters */ 5, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[265], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [45] */ - /* num parameters */ 6, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[126], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [46] */ - /* num parameters */ 4, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[391], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [47] */ - /* num parameters */ 5, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[270], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [48] */ - /* num parameters */ 4, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[395], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [49] */ - /* num parameters */ 5, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[275], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [50] */ - /* num parameters */ 4, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[3], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[399], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [51] */ - /* num parameters */ 5, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[3], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[280], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [52] */ - /* num parameters */ 5, - /* num template types */ 2, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[285], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [53] */ - /* num parameters */ 6, - /* num template types */ 2, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[132], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [54] */ - /* num parameters */ 4, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[3], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[403], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [55] */ - /* num parameters */ 5, - /* num template types */ 2, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[2], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[290], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [56] */ - /* num parameters */ 3, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[519], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kIsDeprecated), - /* const eval */ nullptr, - }, - { - /* [57] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[37], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [58] */ + /* [43] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[985], + /* parameters */ &kParameters[982], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [59] */ + /* [44] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[986], + /* parameters */ &kParameters[983], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecSplat, }, { - /* [60] */ + /* [45] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -9065,7 +8870,19 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::VecInitS, }, { - /* [61] */ + /* [46] */ + /* num parameters */ 3, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[28], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[576], + /* return matcher indices */ &kMatcherIndices[130], + /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::VecInitM, + }, + { + /* [47] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -9077,7 +8894,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::VecInitM, }, { - /* [62] */ + /* [48] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -9089,115 +8906,271 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::VecInitM, }, { - /* [63] */ - /* num parameters */ 3, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[585], - /* return matcher indices */ &kMatcherIndices[130], - /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::VecInitM, - }, - { - /* [64] */ + /* [49] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[795], + /* parameters */ &kParameters[792], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitM, }, { - /* [65] */ + /* [50] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[797], + /* parameters */ &kParameters[794], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitM, }, { - /* [66] */ + /* [51] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[799], + /* parameters */ &kParameters[796], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitM, }, { - /* [67] */ + /* [52] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[987], + /* parameters */ &kParameters[984], /* return matcher indices */ &kMatcherIndices[110], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [68] */ + /* [53] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[988], + /* parameters */ &kParameters[985], /* return matcher indices */ &kMatcherIndices[172], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [69] */ + /* [54] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[16], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[989], + /* parameters */ &kParameters[986], /* return matcher indices */ &kMatcherIndices[152], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [70] */ + /* [55] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[18], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[990], + /* parameters */ &kParameters[987], /* return matcher indices */ &kMatcherIndices[154], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [71] */ + /* [56] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[20], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[991], + /* parameters */ &kParameters[988], /* return matcher indices */ &kMatcherIndices[174], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [72] */ + /* [57] */ + /* num parameters */ 4, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[387], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [58] */ + /* num parameters */ 5, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[260], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [59] */ + /* num parameters */ 5, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[265], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [60] */ + /* num parameters */ 6, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[126], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [61] */ + /* num parameters */ 4, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[391], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [62] */ + /* num parameters */ 5, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[270], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [63] */ + /* num parameters */ 4, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[395], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [64] */ + /* num parameters */ 5, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[275], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [65] */ + /* num parameters */ 4, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[3], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[399], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [66] */ + /* num parameters */ 5, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[3], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[280], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [67] */ + /* num parameters */ 5, + /* num template types */ 2, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[285], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [68] */ + /* num parameters */ 6, + /* num template types */ 2, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[132], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [69] */ + /* num parameters */ 4, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[3], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[403], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [70] */ + /* num parameters */ 5, + /* num template types */ 2, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[2], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[290], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [71] */ /* num parameters */ 4, /* num template types */ 2, /* num template numbers */ 0, @@ -9209,7 +9182,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [73] */ + /* [72] */ /* num parameters */ 5, /* num template types */ 2, /* num template numbers */ 0, @@ -9221,7 +9194,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [74] */ + /* [73] */ /* num parameters */ 5, /* num template types */ 3, /* num template numbers */ 0, @@ -9233,7 +9206,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [75] */ + /* [74] */ /* num parameters */ 6, /* num template types */ 3, /* num template numbers */ 0, @@ -9245,7 +9218,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [76] */ + /* [75] */ /* num parameters */ 4, /* num template types */ 2, /* num template numbers */ 0, @@ -9257,7 +9230,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [77] */ + /* [76] */ /* num parameters */ 5, /* num template types */ 3, /* num template numbers */ 0, @@ -9269,7 +9242,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [78] */ + /* [77] */ /* num parameters */ 3, /* num template types */ 0, /* num template numbers */ 0, @@ -9281,7 +9254,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [79] */ + /* [78] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -9293,7 +9266,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [80] */ + /* [79] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -9305,7 +9278,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [81] */ + /* [80] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -9317,7 +9290,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [82] */ + /* [81] */ /* num parameters */ 3, /* num template types */ 0, /* num template numbers */ 0, @@ -9329,7 +9302,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [83] */ + /* [82] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -9340,6 +9313,18 @@ constexpr OverloadInfo kOverloads[] = { /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [83] */ + /* num parameters */ 3, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[1], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[525], + /* return matcher indices */ nullptr, + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [84] */ /* num parameters */ 3, @@ -9354,18 +9339,6 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [85] */ - /* num parameters */ 3, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[1], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[531], - /* return matcher indices */ nullptr, - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [86] */ /* num parameters */ 4, /* num template types */ 2, /* num template numbers */ 0, @@ -9376,6 +9349,18 @@ constexpr OverloadInfo kOverloads[] = { /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [86] */ + /* num parameters */ 3, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[1], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[531], + /* return matcher indices */ nullptr, + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [87] */ /* num parameters */ 3, @@ -9402,18 +9387,6 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [89] */ - /* num parameters */ 3, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[1], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[540], - /* return matcher indices */ nullptr, - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [90] */ /* num parameters */ 4, /* num template types */ 2, /* num template numbers */ 0, @@ -9424,6 +9397,18 @@ constexpr OverloadInfo kOverloads[] = { /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [90] */ + /* num parameters */ 3, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[1], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[540], + /* return matcher indices */ nullptr, + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [91] */ /* num parameters */ 3, @@ -9450,18 +9435,6 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [93] */ - /* num parameters */ 3, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[1], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[549], - /* return matcher indices */ nullptr, - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [94] */ /* num parameters */ 4, /* num template types */ 2, /* num template numbers */ 0, @@ -9473,29 +9446,41 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [95] */ + /* [94] */ /* num parameters */ 3, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[552], + /* parameters */ &kParameters[549], /* return matcher indices */ nullptr, /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [96] */ + /* [95] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[37], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[102], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, + { + /* [96] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[28], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[975], + /* return matcher indices */ &kMatcherIndices[102], + /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Identity, + }, { /* [97] */ /* num parameters */ 1, @@ -9503,35 +9488,35 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[978], - /* return matcher indices */ &kMatcherIndices[102], - /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Identity, - }, - { - /* [98] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[979], + /* parameters */ &kParameters[976], /* return matcher indices */ &kMatcherIndices[102], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecSplat, }, { - /* [99] */ + /* [98] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[576], + /* parameters */ &kParameters[573], /* return matcher indices */ &kMatcherIndices[102], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitS, }, + { + /* [99] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[28], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[788], + /* return matcher indices */ &kMatcherIndices[102], + /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::VecInitM, + }, { /* [100] */ /* num parameters */ 2, @@ -9539,32 +9524,32 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[791], + /* parameters */ &kParameters[790], /* return matcher indices */ &kMatcherIndices[102], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitM, }, { /* [101] */ - /* num parameters */ 2, - /* num template types */ 1, + /* num parameters */ 1, + /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[28], + /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[793], - /* return matcher indices */ &kMatcherIndices[102], - /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::VecInitM, + /* parameters */ &kParameters[977], + /* return matcher indices */ &kMatcherIndices[134], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, }, { /* [102] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[12], + /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[980], - /* return matcher indices */ &kMatcherIndices[134], + /* parameters */ &kParameters[978], + /* return matcher indices */ &kMatcherIndices[166], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -9573,10 +9558,10 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], + /* template types */ &kTemplateTypes[16], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[981], - /* return matcher indices */ &kMatcherIndices[166], + /* parameters */ &kParameters[979], + /* return matcher indices */ &kMatcherIndices[144], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -9585,10 +9570,10 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[16], + /* template types */ &kTemplateTypes[18], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[982], - /* return matcher indices */ &kMatcherIndices[144], + /* parameters */ &kParameters[980], + /* return matcher indices */ &kMatcherIndices[122], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -9597,24 +9582,24 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[18], + /* template types */ &kTemplateTypes[20], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[983], - /* return matcher indices */ &kMatcherIndices[122], + /* parameters */ &kParameters[981], + /* return matcher indices */ &kMatcherIndices[168], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { /* [106] */ /* num parameters */ 1, - /* num template types */ 2, + /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[20], + /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[984], - /* return matcher indices */ &kMatcherIndices[168], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, + /* parameters */ &kParameters[938], + /* return matcher indices */ &kMatcherIndices[101], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, }, { /* [107] */ @@ -9623,7 +9608,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[941], + /* parameters */ &kParameters[939], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9635,7 +9620,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[942], + /* parameters */ &kParameters[940], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9647,7 +9632,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[943], + /* parameters */ &kParameters[941], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9659,7 +9644,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[944], + /* parameters */ &kParameters[942], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9671,7 +9656,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[945], + /* parameters */ &kParameters[943], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9679,11 +9664,11 @@ constexpr OverloadInfo kOverloads[] = { { /* [112] */ /* num parameters */ 1, - /* num template types */ 1, + /* num template types */ 0, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[0], + /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[946], + /* parameters */ &kParameters[944], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9695,7 +9680,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[947], + /* parameters */ &kParameters[945], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9707,7 +9692,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[948], + /* parameters */ &kParameters[946], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -9719,20 +9704,20 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[949], + /* parameters */ &kParameters[947], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [116] */ - /* num parameters */ 1, - /* num template types */ 0, + /* num parameters */ 3, + /* num template types */ 3, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], + /* template types */ &kTemplateTypes[4], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[950], - /* return matcher indices */ &kMatcherIndices[101], + /* parameters */ &kParameters[552], + /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -9750,18 +9735,6 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [118] */ - /* num parameters */ 3, - /* num template types */ 3, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[4], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[558], - /* return matcher indices */ &kMatcherIndices[130], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [119] */ /* num parameters */ 4, /* num template types */ 4, /* num template numbers */ 0, @@ -9773,12 +9746,24 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [120] */ + /* [119] */ /* num parameters */ 3, /* num template types */ 3, /* num template numbers */ 0, /* template types */ &kTemplateTypes[4], /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[558], + /* return matcher indices */ &kMatcherIndices[130], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [120] */ + /* num parameters */ 3, + /* num template types */ 3, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[7], + /* template numbers */ &kTemplateNumbers[10], /* parameters */ &kParameters[561], /* return matcher indices */ &kMatcherIndices[130], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), @@ -9787,29 +9772,17 @@ constexpr OverloadInfo kOverloads[] = { { /* [121] */ /* num parameters */ 3, - /* num template types */ 3, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[7], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[564], - /* return matcher indices */ &kMatcherIndices[130], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [122] */ - /* num parameters */ 3, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[5], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[567], + /* parameters */ &kParameters[564], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [123] */ + /* [122] */ /* num parameters */ 4, /* num template types */ 3, /* num template numbers */ 0, @@ -9821,38 +9794,50 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [124] */ + /* [123] */ /* num parameters */ 3, /* num template types */ 2, /* num template numbers */ 0, /* template types */ &kTemplateTypes[8], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[570], + /* parameters */ &kParameters[567], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [124] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[1], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[652], + /* return matcher indices */ &kMatcherIndices[110], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [125] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[1], + /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[655], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, + /* parameters */ &kParameters[692], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::OpMultiply, }, { /* [126] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[695], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[694], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiply, }, @@ -9863,7 +9848,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[697], + /* parameters */ &kParameters[696], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiply, @@ -9875,7 +9860,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[699], + /* parameters */ &kParameters[698], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiply, @@ -9884,11 +9869,11 @@ constexpr OverloadInfo kOverloads[] = { /* [129] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], + /* num template numbers */ 2, + /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[701], - /* return matcher indices */ &kMatcherIndices[30], + /* parameters */ &kParameters[700], + /* return matcher indices */ &kMatcherIndices[14], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiply, }, @@ -9899,7 +9884,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[703], + /* parameters */ &kParameters[702], /* return matcher indices */ &kMatcherIndices[14], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiply, @@ -9910,11 +9895,11 @@ constexpr OverloadInfo kOverloads[] = { /* num template types */ 1, /* num template numbers */ 2, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[705], - /* return matcher indices */ &kMatcherIndices[14], + /* template numbers */ &kTemplateNumbers[1], + /* parameters */ &kParameters[704], + /* return matcher indices */ &kMatcherIndices[96], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpMultiply, + /* const eval */ &ConstEval::OpMultiplyMatVec, }, { /* [132] */ @@ -9923,47 +9908,47 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 2, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[1], - /* parameters */ &kParameters[707], - /* return matcher indices */ &kMatcherIndices[96], - /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpMultiplyMatVec, - }, - { - /* [133] */ - /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 2, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[1], - /* parameters */ &kParameters[709], + /* parameters */ &kParameters[706], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiplyVecMat, }, { - /* [134] */ + /* [133] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 3, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[0], - /* parameters */ &kParameters[711], + /* parameters */ &kParameters[708], /* return matcher indices */ &kMatcherIndices[26], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMultiplyMatMat, }, { - /* [135] */ + /* [134] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[37], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[150], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, + { + /* [135] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[28], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[968], + /* return matcher indices */ &kMatcherIndices[150], + /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Identity, + }, { /* [136] */ /* num parameters */ 1, @@ -9971,44 +9956,44 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[971], - /* return matcher indices */ &kMatcherIndices[150], - /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Identity, - }, - { - /* [137] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[972], + /* parameters */ &kParameters[969], /* return matcher indices */ &kMatcherIndices[150], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecSplat, }, { - /* [138] */ + /* [137] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[789], + /* parameters */ &kParameters[786], /* return matcher indices */ &kMatcherIndices[150], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::VecInitS, }, + { + /* [138] */ + /* num parameters */ 1, + /* num template types */ 2, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[12], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[970], + /* return matcher indices */ &kMatcherIndices[108], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [139] */ /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[12], + /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[973], - /* return matcher indices */ &kMatcherIndices[108], + /* parameters */ &kParameters[971], + /* return matcher indices */ &kMatcherIndices[162], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -10017,10 +10002,10 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], + /* template types */ &kTemplateTypes[16], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[974], - /* return matcher indices */ &kMatcherIndices[162], + /* parameters */ &kParameters[972], + /* return matcher indices */ &kMatcherIndices[132], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -10029,10 +10014,10 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[16], + /* template types */ &kTemplateTypes[18], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[975], - /* return matcher indices */ &kMatcherIndices[132], + /* parameters */ &kParameters[973], + /* return matcher indices */ &kMatcherIndices[116], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, @@ -10041,27 +10026,15 @@ constexpr OverloadInfo kOverloads[] = { /* num parameters */ 1, /* num template types */ 2, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[18], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[976], - /* return matcher indices */ &kMatcherIndices[116], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [143] */ - /* num parameters */ 1, - /* num template types */ 2, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[20], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[977], + /* parameters */ &kParameters[974], /* return matcher indices */ &kMatcherIndices[164], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [144] */ + /* [143] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10073,7 +10046,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [145] */ + /* [144] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10085,7 +10058,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [146] */ + /* [145] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10097,7 +10070,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [147] */ + /* [146] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10109,7 +10082,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [148] */ + /* [147] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10121,7 +10094,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [149] */ + /* [148] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10133,7 +10106,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [150] */ + /* [149] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10145,7 +10118,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [151] */ + /* [150] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10157,7 +10130,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [152] */ + /* [151] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10169,7 +10142,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [153] */ + /* [152] */ /* num parameters */ 6, /* num template types */ 0, /* num template numbers */ 0, @@ -10181,7 +10154,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [154] */ + /* [153] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10193,7 +10166,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [155] */ + /* [154] */ /* num parameters */ 7, /* num template types */ 1, /* num template numbers */ 0, @@ -10205,7 +10178,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [156] */ + /* [155] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10217,7 +10190,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [157] */ + /* [156] */ /* num parameters */ 6, /* num template types */ 0, /* num template numbers */ 0, @@ -10229,7 +10202,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [158] */ + /* [157] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10241,7 +10214,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [159] */ + /* [158] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10253,7 +10226,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [160] */ + /* [159] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10265,7 +10238,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [161] */ + /* [160] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10277,7 +10250,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [162] */ + /* [161] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10289,7 +10262,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [163] */ + /* [162] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10301,7 +10274,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [164] */ + /* [163] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10313,7 +10286,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [165] */ + /* [164] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10325,7 +10298,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [166] */ + /* [165] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10337,7 +10310,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [167] */ + /* [166] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10349,7 +10322,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [168] */ + /* [167] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10361,7 +10334,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [169] */ + /* [168] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10373,7 +10346,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [170] */ + /* [169] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10385,7 +10358,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [171] */ + /* [170] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10397,7 +10370,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [172] */ + /* [171] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10409,7 +10382,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [173] */ + /* [172] */ /* num parameters */ 5, /* num template types */ 0, /* num template numbers */ 0, @@ -10421,7 +10394,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [174] */ + /* [173] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10433,7 +10406,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [175] */ + /* [174] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10445,7 +10418,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [176] */ + /* [175] */ /* num parameters */ 4, /* num template types */ 0, /* num template numbers */ 0, @@ -10457,7 +10430,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [177] */ + /* [176] */ /* num parameters */ 5, /* num template types */ 1, /* num template numbers */ 0, @@ -10469,31 +10442,31 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [178] */ + /* [177] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[176], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [179] */ + /* [178] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[992], + /* parameters */ &kParameters[989], /* return matcher indices */ &kMatcherIndices[176], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [180] */ + /* [179] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -10505,67 +10478,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [181] */ + /* [180] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[801], + /* parameters */ &kParameters[798], /* return matcher indices */ &kMatcherIndices[176], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [181] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[990], + /* return matcher indices */ &kMatcherIndices[180], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [182] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[993], - /* return matcher indices */ &kMatcherIndices[180], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [183] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[994], + /* parameters */ &kParameters[991], /* return matcher indices */ &kMatcherIndices[178], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [184] */ + /* [183] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[182], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [185] */ + /* [184] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[995], + /* parameters */ &kParameters[992], /* return matcher indices */ &kMatcherIndices[182], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [186] */ + /* [185] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10577,67 +10550,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [187] */ + /* [186] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[803], + /* parameters */ &kParameters[800], /* return matcher indices */ &kMatcherIndices[182], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [187] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[993], + /* return matcher indices */ &kMatcherIndices[186], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [188] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[996], - /* return matcher indices */ &kMatcherIndices[186], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [189] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[997], + /* parameters */ &kParameters[994], /* return matcher indices */ &kMatcherIndices[184], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [190] */ + /* [189] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[188], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [191] */ + /* [190] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[998], + /* parameters */ &kParameters[995], /* return matcher indices */ &kMatcherIndices[188], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [192] */ + /* [191] */ /* num parameters */ 8, /* num template types */ 1, /* num template numbers */ 0, @@ -10649,67 +10622,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [193] */ + /* [192] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[805], + /* parameters */ &kParameters[802], /* return matcher indices */ &kMatcherIndices[188], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [193] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[996], + /* return matcher indices */ &kMatcherIndices[192], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [194] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[999], - /* return matcher indices */ &kMatcherIndices[192], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [195] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1000], + /* parameters */ &kParameters[997], /* return matcher indices */ &kMatcherIndices[190], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [196] */ + /* [195] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[194], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [197] */ + /* [196] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1001], + /* parameters */ &kParameters[998], /* return matcher indices */ &kMatcherIndices[194], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [198] */ + /* [197] */ /* num parameters */ 6, /* num template types */ 1, /* num template numbers */ 0, @@ -10721,67 +10694,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [199] */ + /* [198] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[588], + /* parameters */ &kParameters[585], /* return matcher indices */ &kMatcherIndices[194], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [199] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[999], + /* return matcher indices */ &kMatcherIndices[198], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [200] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1002], - /* return matcher indices */ &kMatcherIndices[198], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [201] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1003], + /* parameters */ &kParameters[1000], /* return matcher indices */ &kMatcherIndices[196], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [202] */ + /* [201] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[200], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [203] */ + /* [202] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1004], + /* parameters */ &kParameters[1001], /* return matcher indices */ &kMatcherIndices[200], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [204] */ + /* [203] */ /* num parameters */ 9, /* num template types */ 1, /* num template numbers */ 0, @@ -10793,67 +10766,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [205] */ + /* [204] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[591], + /* parameters */ &kParameters[588], /* return matcher indices */ &kMatcherIndices[200], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [205] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[1002], + /* return matcher indices */ &kMatcherIndices[204], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [206] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1005], - /* return matcher indices */ &kMatcherIndices[204], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [207] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1006], + /* parameters */ &kParameters[1003], /* return matcher indices */ &kMatcherIndices[202], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [208] */ + /* [207] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[206], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [209] */ + /* [208] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1007], + /* parameters */ &kParameters[1004], /* return matcher indices */ &kMatcherIndices[206], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [210] */ + /* [209] */ /* num parameters */ 12, /* num template types */ 1, /* num template numbers */ 0, @@ -10865,67 +10838,67 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [211] */ + /* [210] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[594], + /* parameters */ &kParameters[591], /* return matcher indices */ &kMatcherIndices[206], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::MatInitV, }, + { + /* [211] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[14], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[1005], + /* return matcher indices */ &kMatcherIndices[210], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [212] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[14], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1008], - /* return matcher indices */ &kMatcherIndices[210], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, - }, - { - /* [213] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1009], + /* parameters */ &kParameters[1006], /* return matcher indices */ &kMatcherIndices[208], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [214] */ + /* [213] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[212], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [215] */ + /* [214] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1010], + /* parameters */ &kParameters[1007], /* return matcher indices */ &kMatcherIndices[212], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [216] */ + /* [215] */ /* num parameters */ 8, /* num template types */ 1, /* num template numbers */ 0, @@ -10937,7 +10910,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [217] */ + /* [216] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -10949,55 +10922,55 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitV, }, { - /* [218] */ + /* [217] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1011], + /* parameters */ &kParameters[1008], /* return matcher indices */ &kMatcherIndices[216], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [219] */ + /* [218] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1012], + /* parameters */ &kParameters[1009], /* return matcher indices */ &kMatcherIndices[214], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [220] */ + /* [219] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[218], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [221] */ + /* [220] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1013], + /* parameters */ &kParameters[1010], /* return matcher indices */ &kMatcherIndices[218], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [222] */ + /* [221] */ /* num parameters */ 12, /* num template types */ 1, /* num template numbers */ 0, @@ -11009,7 +10982,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [223] */ + /* [222] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -11021,55 +10994,55 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitV, }, { - /* [224] */ + /* [223] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1014], + /* parameters */ &kParameters[1011], /* return matcher indices */ &kMatcherIndices[222], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [225] */ + /* [224] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[12], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1015], + /* parameters */ &kParameters[1012], /* return matcher indices */ &kMatcherIndices[220], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [226] */ + /* [225] */ /* num parameters */ 0, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], - /* return matcher indices */ &kMatcherIndices[224], - /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Zero, - }, - { - /* [227] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[224], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Zero, + }, + { + /* [226] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[1013], + /* return matcher indices */ &kMatcherIndices[224], + /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [228] */ + /* [227] */ /* num parameters */ 16, /* num template types */ 1, /* num template numbers */ 0, @@ -11081,7 +11054,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitS, }, { - /* [229] */ + /* [228] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -11093,28 +11066,40 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::MatInitV, }, { - /* [230] */ + /* [229] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[14], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1017], + /* parameters */ &kParameters[1014], /* return matcher indices */ &kMatcherIndices[228], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, + { + /* [230] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[12], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[1015], + /* return matcher indices */ &kMatcherIndices[226], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [231] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[12], + /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1018], - /* return matcher indices */ &kMatcherIndices[226], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, + /* parameters */ &kParameters[933], + /* return matcher indices */ &kMatcherIndices[101], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, }, { /* [232] */ @@ -11123,7 +11108,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[0], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[936], + /* parameters */ &kParameters[934], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -11131,11 +11116,11 @@ constexpr OverloadInfo kOverloads[] = { { /* [233] */ /* num parameters */ 1, - /* num template types */ 1, + /* num template types */ 0, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[0], + /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[937], + /* parameters */ &kParameters[935], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -11147,7 +11132,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[938], + /* parameters */ &kParameters[936], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -11156,38 +11141,38 @@ constexpr OverloadInfo kOverloads[] = { /* [235] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 2, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[939], + /* template numbers */ &kTemplateNumbers[6], + /* parameters */ &kParameters[937], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [236] */ - /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 2, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[6], - /* parameters */ &kParameters[940], - /* return matcher indices */ &kMatcherIndices[101], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [237] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[675], + /* parameters */ &kParameters[672], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpPlus, }, + { + /* [237] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[22], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[674], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::OpPlus, + }, { /* [238] */ /* num parameters */ 2, @@ -11195,7 +11180,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[677], + /* parameters */ &kParameters[676], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpPlus, @@ -11207,7 +11192,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[679], + /* parameters */ &kParameters[678], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpPlus, @@ -11216,11 +11201,11 @@ constexpr OverloadInfo kOverloads[] = { /* [240] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], + /* num template numbers */ 2, + /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[681], - /* return matcher indices */ &kMatcherIndices[30], + /* parameters */ &kParameters[680], + /* return matcher indices */ &kMatcherIndices[14], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpPlus, }, @@ -11228,23 +11213,23 @@ constexpr OverloadInfo kOverloads[] = { /* [241] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 2, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[683], - /* return matcher indices */ &kMatcherIndices[14], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[22], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[682], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpPlus, + /* const eval */ &ConstEval::OpMinus, }, { /* [242] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[685], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[684], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMinus, }, @@ -11255,7 +11240,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[687], + /* parameters */ &kParameters[686], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMinus, @@ -11267,7 +11252,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[689], + /* parameters */ &kParameters[688], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMinus, @@ -11276,11 +11261,11 @@ constexpr OverloadInfo kOverloads[] = { /* [245] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], + /* num template numbers */ 2, + /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[691], - /* return matcher indices */ &kMatcherIndices[30], + /* parameters */ &kParameters[690], + /* return matcher indices */ &kMatcherIndices[14], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpMinus, }, @@ -11288,23 +11273,23 @@ constexpr OverloadInfo kOverloads[] = { /* [246] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 2, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[693], - /* return matcher indices */ &kMatcherIndices[14], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[22], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[710], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpMinus, + /* const eval */ &ConstEval::OpDivide, }, { /* [247] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[713], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[712], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpDivide, }, @@ -11315,7 +11300,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[715], + /* parameters */ &kParameters[714], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpDivide, @@ -11327,7 +11312,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[717], + /* parameters */ &kParameters[716], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpDivide, @@ -11336,23 +11321,23 @@ constexpr OverloadInfo kOverloads[] = { /* [250] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[719], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[27], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[718], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpDivide, + /* const eval */ nullptr, }, { /* [251] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[27], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[721], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[720], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -11363,7 +11348,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[27], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[723], + /* parameters */ &kParameters[722], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -11375,7 +11360,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[27], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[725], + /* parameters */ &kParameters[724], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -11383,36 +11368,36 @@ constexpr OverloadInfo kOverloads[] = { { /* [254] */ /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[27], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[727], - /* return matcher indices */ &kMatcherIndices[30], + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[730], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, + /* const eval */ &ConstEval::OpAnd, }, { /* [255] */ /* num parameters */ 2, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[733], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[732], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpAnd, }, { /* [256] */ /* num parameters */ 2, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[735], - /* return matcher indices */ &kMatcherIndices[33], + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[29], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[734], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpAnd, }, @@ -11420,47 +11405,47 @@ constexpr OverloadInfo kOverloads[] = { /* [257] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[737], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[736], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpAnd, }, { /* [258] */ /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[739], - /* return matcher indices */ &kMatcherIndices[30], + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[738], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpAnd, + /* const eval */ &ConstEval::OpOr, }, { /* [259] */ /* num parameters */ 2, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[741], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[740], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpOr, }, { /* [260] */ /* num parameters */ 2, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[743], - /* return matcher indices */ &kMatcherIndices[33], + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[29], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[742], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpOr, }, @@ -11468,11 +11453,11 @@ constexpr OverloadInfo kOverloads[] = { /* [261] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[745], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[744], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpOr, }, @@ -11480,23 +11465,23 @@ constexpr OverloadInfo kOverloads[] = { /* [262] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[747], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[25], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[774], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpOr, + /* const eval */ &ConstEval::OpShiftLeft, }, { /* [263] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[777], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[776], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpShiftLeft, }, @@ -11504,11 +11489,11 @@ constexpr OverloadInfo kOverloads[] = { /* [264] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[779], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[31], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[778], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpShiftLeft, }, @@ -11516,28 +11501,16 @@ constexpr OverloadInfo kOverloads[] = { /* [265] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[31], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[781], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpShiftLeft, - }, - { - /* [266] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[31], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[783], + /* parameters */ &kParameters[780], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpShiftLeft, }, { - /* [267] */ + /* [266] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -11549,7 +11522,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [268] */ + /* [267] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -11561,7 +11534,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [269] */ + /* [268] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -11573,7 +11546,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [270] */ + /* [269] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -11585,7 +11558,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::select_bool, }, { - /* [271] */ + /* [270] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -11597,7 +11570,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::select_bool, }, { - /* [272] */ + /* [271] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -11609,194 +11582,206 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::select_boolvec, }, { - /* [273] */ + /* [272] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[9], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [274] */ + /* [273] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[961], + /* parameters */ &kParameters[958], /* return matcher indices */ &kMatcherIndices[9], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [275] */ + /* [274] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[32], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[962], + /* parameters */ &kParameters[959], /* return matcher indices */ &kMatcherIndices[9], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [276] */ + /* [275] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [277] */ + /* [276] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[963], + /* parameters */ &kParameters[960], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [278] */ + /* [277] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[33], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[964], + /* parameters */ &kParameters[961], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [279] */ + /* [278] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [280] */ + /* [279] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[965], + /* parameters */ &kParameters[962], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [281] */ + /* [280] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[34], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[966], + /* parameters */ &kParameters[963], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [282] */ + /* [281] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[1], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [283] */ + /* [282] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[967], + /* parameters */ &kParameters[964], /* return matcher indices */ &kMatcherIndices[1], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, { - /* [284] */ + /* [283] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[35], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[968], + /* parameters */ &kParameters[965], /* return matcher indices */ &kMatcherIndices[1], /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Conv, }, { - /* [285] */ + /* [284] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Zero, }, { - /* [286] */ + /* [285] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[969], + /* parameters */ &kParameters[966], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsInitializer, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, + { + /* [286] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[967], + /* return matcher indices */ &kMatcherIndices[35], + /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::Conv, + }, { /* [287] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[36], + /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[970], - /* return matcher indices */ &kMatcherIndices[35], - /* flags */ OverloadFlags(OverloadFlag::kIsConverter, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::Conv, + /* parameters */ &kParameters[804], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::abs, }, { /* [288] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[807], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[805], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::abs, }, @@ -11804,23 +11789,23 @@ constexpr OverloadInfo kOverloads[] = { /* [289] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[808], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[806], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::abs, + /* const eval */ &ConstEval::acos, }, { /* [290] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[809], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[807], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::acos, }, @@ -11828,46 +11813,46 @@ constexpr OverloadInfo kOverloads[] = { /* [291] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[810], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[808], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::acos, + /* const eval */ &ConstEval::acosh, }, { /* [292] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[811], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[809], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::acosh, }, { /* [293] */ /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[812], - /* return matcher indices */ &kMatcherIndices[30], + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[810], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::acosh, + /* const eval */ &ConstEval::all, }, { /* [294] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[813], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[811], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::all, @@ -11876,22 +11861,22 @@ constexpr OverloadInfo kOverloads[] = { /* [295] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[814], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[812], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::all, + /* const eval */ &ConstEval::any, }, { /* [296] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[815], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[813], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::any, @@ -11899,24 +11884,24 @@ constexpr OverloadInfo kOverloads[] = { { /* [297] */ /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[816], - /* return matcher indices */ &kMatcherIndices[35], + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[815], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::any, + /* const eval */ &ConstEval::asin, }, { /* [298] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[818], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[816], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::asin, }, @@ -11924,23 +11909,23 @@ constexpr OverloadInfo kOverloads[] = { /* [299] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[819], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[817], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::asin, + /* const eval */ &ConstEval::asinh, }, { /* [300] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[820], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[818], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::asinh, }, @@ -11948,112 +11933,100 @@ constexpr OverloadInfo kOverloads[] = { /* [301] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[821], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[819], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::asinh, + /* const eval */ &ConstEval::atan, }, { /* [302] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[822], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[820], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::atan, }, { /* [303] */ - /* num parameters */ 1, + /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[823], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[594], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::atan, + /* const eval */ &ConstEval::atan2, }, { /* [304] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[597], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::atan2, - }, - { - /* [305] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[599], + /* parameters */ &kParameters[596], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::atan2, }, { - /* [306] */ + /* [305] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[824], + /* parameters */ &kParameters[821], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::atanh, }, + { + /* [306] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[822], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::atanh, + }, { /* [307] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[825], - /* return matcher indices */ &kMatcherIndices[30], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::atanh, - }, - { - /* [308] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[826], + /* parameters */ &kParameters[823], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::ceil, }, { - /* [309] */ + /* [308] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[827], + /* parameters */ &kParameters[824], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::ceil, }, { - /* [310] */ + /* [309] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -12065,7 +12038,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::clamp, }, { - /* [311] */ + /* [310] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -12077,38 +12050,50 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::clamp, }, { - /* [312] */ + /* [311] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[828], + /* parameters */ &kParameters[825], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::cos, }, + { + /* [312] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[826], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::cos, + }, { /* [313] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[829], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[827], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::cos, + /* const eval */ &ConstEval::cosh, }, { /* [314] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[830], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[828], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::cosh, }, @@ -12116,23 +12101,23 @@ constexpr OverloadInfo kOverloads[] = { /* [315] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[831], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[25], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[829], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::cosh, + /* const eval */ &ConstEval::countLeadingZeros, }, { /* [316] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[832], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[830], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::countLeadingZeros, }, @@ -12140,23 +12125,23 @@ constexpr OverloadInfo kOverloads[] = { /* [317] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[833], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[831], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::countLeadingZeros, + /* const eval */ &ConstEval::countOneBits, }, { /* [318] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[834], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[832], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::countOneBits, }, @@ -12164,23 +12149,23 @@ constexpr OverloadInfo kOverloads[] = { /* [319] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[835], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[833], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::countOneBits, + /* const eval */ &ConstEval::countTrailingZeros, }, { /* [320] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[836], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[834], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::countTrailingZeros, }, @@ -12188,71 +12173,71 @@ constexpr OverloadInfo kOverloads[] = { /* [321] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[837], - /* return matcher indices */ &kMatcherIndices[30], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::countTrailingZeros, - }, - { - /* [322] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[838], + /* parameters */ &kParameters[835], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [323] */ + /* [322] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[839], + /* parameters */ &kParameters[836], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [323] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[600], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [324] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[603], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[602], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [325] */ - /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[605], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* num parameters */ 1, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[838], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, { /* [326] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[841], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[839], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12260,11 +12245,11 @@ constexpr OverloadInfo kOverloads[] = { /* [327] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[842], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[840], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12272,11 +12257,11 @@ constexpr OverloadInfo kOverloads[] = { /* [328] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[843], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[841], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12284,11 +12269,11 @@ constexpr OverloadInfo kOverloads[] = { /* [329] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[844], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[842], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12296,11 +12281,11 @@ constexpr OverloadInfo kOverloads[] = { /* [330] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[845], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[843], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12308,11 +12293,11 @@ constexpr OverloadInfo kOverloads[] = { /* [331] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[846], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[844], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12320,11 +12305,11 @@ constexpr OverloadInfo kOverloads[] = { /* [332] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[847], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[845], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12332,11 +12317,11 @@ constexpr OverloadInfo kOverloads[] = { /* [333] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[848], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[846], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12344,11 +12329,11 @@ constexpr OverloadInfo kOverloads[] = { /* [334] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[849], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[847], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12356,11 +12341,11 @@ constexpr OverloadInfo kOverloads[] = { /* [335] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[850], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[848], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12368,35 +12353,35 @@ constexpr OverloadInfo kOverloads[] = { /* [336] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[851], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[849], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, { /* [337] */ /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[852], - /* return matcher indices */ &kMatcherIndices[36], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[850], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [338] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[853], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[851], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12404,11 +12389,11 @@ constexpr OverloadInfo kOverloads[] = { /* [339] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[854], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[852], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12416,28 +12401,16 @@ constexpr OverloadInfo kOverloads[] = { /* [340] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[855], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [341] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[856], + /* parameters */ &kParameters[853], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [342] */ + /* [341] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -12449,7 +12422,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::extractBits, }, { - /* [343] */ + /* [342] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -12461,38 +12434,50 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::extractBits, }, { - /* [344] */ + /* [343] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[857], + /* parameters */ &kParameters[854], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::firstLeadingBit, }, + { + /* [344] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[25], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[855], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::firstLeadingBit, + }, { /* [345] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[858], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[856], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::firstLeadingBit, + /* const eval */ &ConstEval::firstTrailingBit, }, { /* [346] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[859], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[857], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::firstTrailingBit, }, @@ -12500,40 +12485,28 @@ constexpr OverloadInfo kOverloads[] = { /* [347] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[860], - /* return matcher indices */ &kMatcherIndices[30], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::firstTrailingBit, - }, - { - /* [348] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[861], + /* parameters */ &kParameters[858], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::floor, }, { - /* [349] */ + /* [348] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[862], + /* parameters */ &kParameters[859], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::floor, }, { - /* [350] */ + /* [349] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -12545,7 +12518,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [351] */ + /* [350] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -12557,26 +12530,38 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [352] */ + /* [351] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[863], + /* parameters */ &kParameters[860], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [352] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[861], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [353] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[864], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[862], + /* return matcher indices */ &kMatcherIndices[104], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12584,35 +12569,35 @@ constexpr OverloadInfo kOverloads[] = { /* [354] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[865], - /* return matcher indices */ &kMatcherIndices[104], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[863], + /* return matcher indices */ &kMatcherIndices[39], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [355] */ /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[866], - /* return matcher indices */ &kMatcherIndices[39], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[864], + /* return matcher indices */ &kMatcherIndices[38], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, { /* [356] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[867], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[865], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12620,11 +12605,11 @@ constexpr OverloadInfo kOverloads[] = { /* [357] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[868], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[866], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12632,11 +12617,11 @@ constexpr OverloadInfo kOverloads[] = { /* [358] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[869], - /* return matcher indices */ &kMatcherIndices[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[867], + /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12644,11 +12629,11 @@ constexpr OverloadInfo kOverloads[] = { /* [359] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[870], - /* return matcher indices */ &kMatcherIndices[36], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[868], + /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, @@ -12656,28 +12641,16 @@ constexpr OverloadInfo kOverloads[] = { /* [360] */ /* num parameters */ 1, /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[871], - /* return matcher indices */ &kMatcherIndices[38], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), - /* const eval */ nullptr, - }, - { - /* [361] */ - /* num parameters */ 1, - /* num template types */ 0, /* num template numbers */ 1, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[872], + /* parameters */ &kParameters[869], /* return matcher indices */ &kMatcherIndices[36], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline), /* const eval */ nullptr, }, { - /* [362] */ + /* [361] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 0, @@ -12689,7 +12662,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::insertBits, }, { - /* [363] */ + /* [362] */ /* num parameters */ 4, /* num template types */ 1, /* num template numbers */ 1, @@ -12701,50 +12674,62 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::insertBits, }, { - /* [364] */ + /* [363] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[873], + /* parameters */ &kParameters[870], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [365] */ + /* [364] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[874], + /* parameters */ &kParameters[871], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [365] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[610], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [366] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[613], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[612], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [367] */ - /* num parameters */ 2, + /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[615], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[872], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12752,10 +12737,10 @@ constexpr OverloadInfo kOverloads[] = { /* [368] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[875], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[873], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -12764,10 +12749,10 @@ constexpr OverloadInfo kOverloads[] = { /* [369] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[876], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[874], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -12776,11 +12761,11 @@ constexpr OverloadInfo kOverloads[] = { /* [370] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[877], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[875], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12788,11 +12773,11 @@ constexpr OverloadInfo kOverloads[] = { /* [371] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[878], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[876], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12800,155 +12785,155 @@ constexpr OverloadInfo kOverloads[] = { /* [372] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[879], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [373] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[880], + /* parameters */ &kParameters[877], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [374] */ + /* [373] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[617], + /* parameters */ &kParameters[614], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::max, }, + { + /* [374] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[22], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[616], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::max, + }, { /* [375] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[619], - /* return matcher indices */ &kMatcherIndices[30], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::max, - }, - { - /* [376] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[621], + /* parameters */ &kParameters[618], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::min, }, { - /* [377] */ + /* [376] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[623], + /* parameters */ &kParameters[620], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::min, }, { - /* [378] */ + /* [377] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[881], + /* parameters */ &kParameters[878], /* return matcher indices */ &kMatcherIndices[106], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [379] */ + /* [378] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[882], + /* parameters */ &kParameters[879], /* return matcher indices */ &kMatcherIndices[45], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [379] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[622], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [380] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[625], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [381] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[627], + /* parameters */ &kParameters[624], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [382] */ + /* [381] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[889], + /* parameters */ &kParameters[886], /* return matcher indices */ &kMatcherIndices[38], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::quantizeToF16, }, + { + /* [382] */ + /* num parameters */ 1, + /* num template types */ 0, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[887], + /* return matcher indices */ &kMatcherIndices[36], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::quantizeToF16, + }, { /* [383] */ /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[890], - /* return matcher indices */ &kMatcherIndices[36], + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[26], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[888], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::quantizeToF16, + /* const eval */ nullptr, }, { /* [384] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[891], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[889], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -12956,23 +12941,23 @@ constexpr OverloadInfo kOverloads[] = { /* [385] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[26], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[892], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[25], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[890], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, + /* const eval */ &ConstEval::reverseBits, }, { /* [386] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[893], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[891], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::reverseBits, }, @@ -12980,23 +12965,23 @@ constexpr OverloadInfo kOverloads[] = { /* [387] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[894], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[892], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::reverseBits, + /* const eval */ &ConstEval::round, }, { /* [388] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[895], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[893], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::round, }, @@ -13004,23 +12989,23 @@ constexpr OverloadInfo kOverloads[] = { /* [389] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[896], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[894], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::round, + /* const eval */ &ConstEval::saturate, }, { /* [390] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[897], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[895], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::saturate, }, @@ -13028,23 +13013,23 @@ constexpr OverloadInfo kOverloads[] = { /* [391] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[898], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[896], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::saturate, + /* const eval */ &ConstEval::sign, }, { /* [392] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[899], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[897], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::sign, }, @@ -13052,23 +13037,23 @@ constexpr OverloadInfo kOverloads[] = { /* [393] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[900], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[898], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::sign, + /* const eval */ &ConstEval::sin, }, { /* [394] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[901], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[899], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::sin, }, @@ -13076,40 +13061,28 @@ constexpr OverloadInfo kOverloads[] = { /* [395] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[902], - /* return matcher indices */ &kMatcherIndices[30], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::sin, - }, - { - /* [396] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[903], + /* parameters */ &kParameters[900], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::sinh, }, { - /* [397] */ + /* [396] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[904], + /* parameters */ &kParameters[901], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::sinh, }, { - /* [398] */ + /* [397] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 0, @@ -13121,7 +13094,7 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::smoothstep, }, { - /* [399] */ + /* [398] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -13133,91 +13106,115 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ &ConstEval::smoothstep, }, { - /* [400] */ + /* [399] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[905], + /* parameters */ &kParameters[902], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::sqrt, }, + { + /* [400] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[903], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::sqrt, + }, { /* [401] */ - /* num parameters */ 1, + /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[906], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[628], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::sqrt, + /* const eval */ &ConstEval::step, }, { /* [402] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[631], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::step, - }, - { - /* [403] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[633], + /* parameters */ &kParameters[630], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::step, }, { - /* [404] */ + /* [403] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[907], + /* parameters */ &kParameters[904], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::tan, }, + { + /* [404] */ + /* num parameters */ 1, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[905], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::tan, + }, { /* [405] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[908], - /* return matcher indices */ &kMatcherIndices[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[906], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::tan, + /* const eval */ &ConstEval::tanh, }, { /* [406] */ /* num parameters */ 1, /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[23], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[907], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::tanh, + }, + { + /* [407] */ + /* num parameters */ 1, + /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], /* parameters */ &kParameters[909], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::tanh, + /* const eval */ &ConstEval::trunc, }, { - /* [407] */ + /* [408] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, @@ -13226,53 +13223,41 @@ constexpr OverloadInfo kOverloads[] = { /* parameters */ &kParameters[910], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::tanh, - }, - { - /* [408] */ - /* num parameters */ 1, - /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[912], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::trunc, }, { /* [409] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[23], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[913], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[0], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[948], + /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::trunc, + /* const eval */ nullptr, }, { /* [410] */ /* num parameters */ 1, - /* num template types */ 1, + /* num template types */ 0, /* num template numbers */ 0, - /* template types */ &kTemplateTypes[0], + /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[951], + /* parameters */ &kParameters[949], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [411] */ - /* num parameters */ 1, + /* num parameters */ 3, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[952], - /* return matcher indices */ &kMatcherIndices[101], + /* parameters */ &kParameters[519], + /* return matcher indices */ &kMatcherIndices[110], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -13290,49 +13275,49 @@ constexpr OverloadInfo kOverloads[] = { }, { /* [413] */ - /* num parameters */ 3, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[525], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [414] */ /* num parameters */ 1, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[955], + /* parameters */ &kParameters[952], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpNot, }, + { + /* [414] */ + /* num parameters */ 1, + /* num template types */ 0, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[953], + /* return matcher indices */ &kMatcherIndices[33], + /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::OpNot, + }, { /* [415] */ /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[956], - /* return matcher indices */ &kMatcherIndices[33], + /* num template types */ 1, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[29], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[954], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpNot, + /* const eval */ &ConstEval::OpComplement, }, { /* [416] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[957], - /* return matcher indices */ &kMatcherIndices[3], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[955], + /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpComplement, }, @@ -13340,71 +13325,71 @@ constexpr OverloadInfo kOverloads[] = { /* [417] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[958], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[30], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[956], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpComplement, + /* const eval */ &ConstEval::OpUnaryMinus, }, { /* [418] */ /* num parameters */ 1, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[30], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[959], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpUnaryMinus, - }, - { - /* [419] */ - /* num parameters */ 1, - /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[30], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[960], + /* parameters */ &kParameters[957], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpUnaryMinus, }, { - /* [420] */ + /* [419] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[29], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[729], + /* parameters */ &kParameters[726], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpXor, }, + { + /* [420] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[29], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[728], + /* return matcher indices */ &kMatcherIndices[30], + /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::OpXor, + }, { /* [421] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[29], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[731], - /* return matcher indices */ &kMatcherIndices[30], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[28], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[750], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpXor, + /* const eval */ &ConstEval::OpEqual, }, { /* [422] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[753], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[752], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpEqual, }, @@ -13412,23 +13397,23 @@ constexpr OverloadInfo kOverloads[] = { /* [423] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[755], - /* return matcher indices */ &kMatcherIndices[33], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[754], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpEqual, + /* const eval */ &ConstEval::OpNotEqual, }, { /* [424] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[757], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[756], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpNotEqual, }, @@ -13436,23 +13421,23 @@ constexpr OverloadInfo kOverloads[] = { /* [425] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[28], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[759], - /* return matcher indices */ &kMatcherIndices[33], + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[22], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[758], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpNotEqual, + /* const eval */ &ConstEval::OpLessThan, }, { /* [426] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[761], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[760], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpLessThan, }, @@ -13460,23 +13445,23 @@ constexpr OverloadInfo kOverloads[] = { /* [427] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[763], - /* return matcher indices */ &kMatcherIndices[33], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[762], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpLessThan, + /* const eval */ &ConstEval::OpGreaterThan, }, { /* [428] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[765], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[764], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpGreaterThan, }, @@ -13484,23 +13469,23 @@ constexpr OverloadInfo kOverloads[] = { /* [429] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[767], - /* return matcher indices */ &kMatcherIndices[33], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[766], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpGreaterThan, + /* const eval */ &ConstEval::OpLessThanEqual, }, { /* [430] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, + /* num template numbers */ 1, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[769], - /* return matcher indices */ &kMatcherIndices[35], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[768], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpLessThanEqual, }, @@ -13508,23 +13493,23 @@ constexpr OverloadInfo kOverloads[] = { /* [431] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, + /* num template numbers */ 0, /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[771], - /* return matcher indices */ &kMatcherIndices[33], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[770], + /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpLessThanEqual, + /* const eval */ &ConstEval::OpGreaterThanEqual, }, { /* [432] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[22], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[773], - /* return matcher indices */ &kMatcherIndices[35], + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[27], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[772], + /* return matcher indices */ &kMatcherIndices[33], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::OpGreaterThanEqual, }, @@ -13532,70 +13517,70 @@ constexpr OverloadInfo kOverloads[] = { /* [433] */ /* num parameters */ 2, /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[27], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[775], - /* return matcher indices */ &kMatcherIndices[33], - /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::OpGreaterThanEqual, - }, - { - /* [434] */ - /* num parameters */ 2, - /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[785], + /* parameters */ &kParameters[782], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [435] */ + /* [434] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[787], + /* parameters */ &kParameters[784], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [436] */ + /* [435] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[24], /* template numbers */ &kTemplateNumbers[8], - /* parameters */ &kParameters[817], + /* parameters */ &kParameters[814], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [437] */ + /* [436] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[23], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[601], + /* parameters */ &kParameters[598], /* return matcher indices */ &kMatcherIndices[102], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::cross, }, { - /* [438] */ + /* [437] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[840], + /* parameters */ &kParameters[837], + /* return matcher indices */ &kMatcherIndices[3], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, + { + /* [438] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[27], + /* template numbers */ &kTemplateNumbers[4], + /* parameters */ &kParameters[604], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13603,12 +13588,12 @@ constexpr OverloadInfo kOverloads[] = { { /* [439] */ /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[27], - /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[607], - /* return matcher indices */ &kMatcherIndices[3], + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[606], + /* return matcher indices */ &kMatcherIndices[9], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -13619,25 +13604,13 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[609], - /* return matcher indices */ &kMatcherIndices[9], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [441] */ - /* num parameters */ 2, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[611], + /* parameters */ &kParameters[608], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [442] */ + /* [441] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -13649,17 +13622,29 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [443] */ + /* [442] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[883], + /* parameters */ &kParameters[880], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [443] */ + /* num parameters */ 1, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[881], + /* return matcher indices */ &kMatcherIndices[101], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::pack2x16float, + }, { /* [444] */ /* num parameters */ 1, @@ -13667,10 +13652,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[884], + /* parameters */ &kParameters[882], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::pack2x16float, + /* const eval */ &ConstEval::pack2x16snorm, }, { /* [445] */ @@ -13679,10 +13664,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[885], + /* parameters */ &kParameters[883], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::pack2x16snorm, + /* const eval */ &ConstEval::pack2x16unorm, }, { /* [446] */ @@ -13691,10 +13676,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[886], + /* parameters */ &kParameters[884], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::pack2x16unorm, + /* const eval */ &ConstEval::pack4x8snorm, }, { /* [447] */ @@ -13703,37 +13688,25 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[887], - /* return matcher indices */ &kMatcherIndices[101], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::pack4x8snorm, - }, - { - /* [448] */ - /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[888], + /* parameters */ &kParameters[885], /* return matcher indices */ &kMatcherIndices[101], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::pack4x8unorm, }, { - /* [449] */ + /* [448] */ /* num parameters */ 2, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[4], - /* parameters */ &kParameters[629], + /* parameters */ &kParameters[626], /* return matcher indices */ &kMatcherIndices[30], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [450] */ + /* [449] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, @@ -13745,29 +13718,41 @@ constexpr OverloadInfo kOverloads[] = { /* const eval */ nullptr, }, { - /* [451] */ + /* [450] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ nullptr, /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [452] */ + /* [451] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 2, /* template types */ &kTemplateTypes[26], /* template numbers */ &kTemplateNumbers[3], - /* parameters */ &kParameters[911], + /* parameters */ &kParameters[908], /* return matcher indices */ &kMatcherIndices[18], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [452] */ + /* num parameters */ 1, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[911], + /* return matcher indices */ &kMatcherIndices[108], + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ &ConstEval::unpack2x16float, + }, { /* [453] */ /* num parameters */ 1, @@ -13775,10 +13760,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[914], + /* parameters */ &kParameters[912], /* return matcher indices */ &kMatcherIndices[108], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::unpack2x16float, + /* const eval */ &ConstEval::unpack2x16snorm, }, { /* [454] */ @@ -13787,10 +13772,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[915], + /* parameters */ &kParameters[913], /* return matcher indices */ &kMatcherIndices[108], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::unpack2x16snorm, + /* const eval */ &ConstEval::unpack2x16unorm, }, { /* [455] */ @@ -13799,10 +13784,10 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[916], - /* return matcher indices */ &kMatcherIndices[108], + /* parameters */ &kParameters[914], + /* return matcher indices */ &kMatcherIndices[110], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::unpack2x16unorm, + /* const eval */ &ConstEval::unpack4x8snorm, }, { /* [456] */ @@ -13811,47 +13796,47 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[917], - /* return matcher indices */ &kMatcherIndices[110], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ &ConstEval::unpack4x8snorm, - }, - { - /* [457] */ - /* num parameters */ 1, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[918], + /* parameters */ &kParameters[915], /* return matcher indices */ &kMatcherIndices[110], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::unpack4x8unorm, }, { - /* [458] */ + /* [457] */ /* num parameters */ 0, /* num template types */ 0, /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[1019], + /* parameters */ &kParameters[1016], /* return matcher indices */ nullptr, /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [459] */ + /* [458] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[953], + /* parameters */ &kParameters[950], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, + { + /* [459] */ + /* num parameters */ 2, + /* num template types */ 1, + /* num template numbers */ 1, + /* template types */ &kTemplateTypes[25], + /* template numbers */ &kTemplateNumbers[9], + /* parameters */ &kParameters[654], + /* return matcher indices */ nullptr, + /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [460] */ /* num parameters */ 2, @@ -13859,8 +13844,8 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[657], - /* return matcher indices */ nullptr, + /* parameters */ &kParameters[656], + /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, @@ -13871,7 +13856,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[659], + /* parameters */ &kParameters[658], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13883,7 +13868,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[661], + /* parameters */ &kParameters[660], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13895,7 +13880,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[663], + /* parameters */ &kParameters[662], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13907,7 +13892,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[665], + /* parameters */ &kParameters[664], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13919,7 +13904,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[667], + /* parameters */ &kParameters[666], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13931,7 +13916,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[669], + /* parameters */ &kParameters[668], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -13943,47 +13928,47 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[671], + /* parameters */ &kParameters[670], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { /* [468] */ - /* num parameters */ 2, - /* num template types */ 1, - /* num template numbers */ 1, - /* template types */ &kTemplateTypes[25], - /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[673], - /* return matcher indices */ &kMatcherIndices[3], - /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [469] */ /* num parameters */ 3, /* num template types */ 1, /* num template numbers */ 1, /* template types */ &kTemplateTypes[25], /* template numbers */ &kTemplateNumbers[9], - /* parameters */ &kParameters[573], + /* parameters */ &kParameters[570], /* return matcher indices */ &kMatcherIndices[160], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, }, { - /* [470] */ + /* [469] */ /* num parameters */ 1, /* num template types */ 1, /* num template numbers */ 0, /* template types */ &kTemplateTypes[24], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[954], + /* parameters */ &kParameters[951], /* return matcher indices */ &kMatcherIndices[3], /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ &ConstEval::Identity, }, + { + /* [470] */ + /* num parameters */ 2, + /* num template types */ 0, + /* num template numbers */ 0, + /* template types */ &kTemplateTypes[38], + /* template numbers */ &kTemplateNumbers[10], + /* parameters */ &kParameters[746], + /* return matcher indices */ &kMatcherIndices[35], + /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), + /* const eval */ nullptr, + }, { /* [471] */ /* num parameters */ 2, @@ -13991,19 +13976,7 @@ constexpr OverloadInfo kOverloads[] = { /* num template numbers */ 0, /* template types */ &kTemplateTypes[38], /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[749], - /* return matcher indices */ &kMatcherIndices[35], - /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), - /* const eval */ nullptr, - }, - { - /* [472] */ - /* num parameters */ 2, - /* num template types */ 0, - /* num template numbers */ 0, - /* template types */ &kTemplateTypes[38], - /* template numbers */ &kTemplateNumbers[10], - /* parameters */ &kParameters[751], + /* parameters */ &kParameters[748], /* return matcher indices */ &kMatcherIndices[35], /* flags */ OverloadFlags(OverloadFlag::kIsOperator, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline), /* const eval */ nullptr, @@ -14016,357 +13989,357 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn abs(T) -> T */ /* fn abs(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[288], + /* overloads */ &kOverloads[287], }, { /* [1] */ /* fn acos(@test_value(0.96891242171) T) -> T */ /* fn acos(@test_value(0.96891242171) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[290], + /* overloads */ &kOverloads[289], }, { /* [2] */ /* fn acosh(@test_value(2) T) -> T */ /* fn acosh(@test_value(2) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[292], + /* overloads */ &kOverloads[291], }, { /* [3] */ /* fn all(bool) -> bool */ /* fn all(vec) -> bool */ /* num overloads */ 2, - /* overloads */ &kOverloads[294], + /* overloads */ &kOverloads[293], }, { /* [4] */ /* fn any(bool) -> bool */ /* fn any(vec) -> bool */ /* num overloads */ 2, - /* overloads */ &kOverloads[296], + /* overloads */ &kOverloads[295], }, { /* [5] */ /* fn arrayLength(ptr, A>) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[436], + /* overloads */ &kOverloads[435], }, { /* [6] */ /* fn asin(@test_value(0.479425538604) T) -> T */ /* fn asin(@test_value(0.479425538604) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[298], + /* overloads */ &kOverloads[297], }, { /* [7] */ /* fn asinh(T) -> T */ /* fn asinh(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[300], + /* overloads */ &kOverloads[299], }, { /* [8] */ /* fn atan(T) -> T */ /* fn atan(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[302], + /* overloads */ &kOverloads[301], }, { /* [9] */ /* fn atan2(T, T) -> T */ /* fn atan2(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[304], + /* overloads */ &kOverloads[303], }, { /* [10] */ /* fn atanh(@test_value(0.5) T) -> T */ /* fn atanh(@test_value(0.5) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[306], + /* overloads */ &kOverloads[305], }, { /* [11] */ /* fn ceil(@test_value(1.5) T) -> T */ /* fn ceil(@test_value(1.5) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[308], + /* overloads */ &kOverloads[307], }, { /* [12] */ /* fn clamp(T, T, T) -> T */ /* fn clamp(vec, vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[310], + /* overloads */ &kOverloads[309], }, { /* [13] */ /* fn cos(@test_value(0) T) -> T */ /* fn cos(@test_value(0) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[312], + /* overloads */ &kOverloads[311], }, { /* [14] */ /* fn cosh(@test_value(0) T) -> T */ /* fn cosh(@test_value(0) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[314], + /* overloads */ &kOverloads[313], }, { /* [15] */ /* fn countLeadingZeros(T) -> T */ /* fn countLeadingZeros(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[316], + /* overloads */ &kOverloads[315], }, { /* [16] */ /* fn countOneBits(T) -> T */ /* fn countOneBits(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[318], + /* overloads */ &kOverloads[317], }, { /* [17] */ /* fn countTrailingZeros(T) -> T */ /* fn countTrailingZeros(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[320], + /* overloads */ &kOverloads[319], }, { /* [18] */ /* fn cross(vec3, vec3) -> vec3 */ /* num overloads */ 1, - /* overloads */ &kOverloads[437], + /* overloads */ &kOverloads[436], }, { /* [19] */ /* fn degrees(T) -> T */ /* fn degrees(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[322], + /* overloads */ &kOverloads[321], }, { /* [20] */ /* fn determinant(mat) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[438], + /* overloads */ &kOverloads[437], }, { /* [21] */ /* fn distance(T, T) -> T */ /* fn distance(vec, vec) -> T */ /* num overloads */ 2, - /* overloads */ &kOverloads[324], + /* overloads */ &kOverloads[323], }, { /* [22] */ /* fn dot(vec, vec) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[439], + /* overloads */ &kOverloads[438], }, { /* [23] */ /* fn dot4I8Packed(u32, u32) -> i32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[440], + /* overloads */ &kOverloads[439], }, { /* [24] */ /* fn dot4U8Packed(u32, u32) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[441], + /* overloads */ &kOverloads[440], }, { /* [25] */ /* fn dpdx(f32) -> f32 */ /* fn dpdx(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[326], + /* overloads */ &kOverloads[325], }, { /* [26] */ /* fn dpdxCoarse(f32) -> f32 */ /* fn dpdxCoarse(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[328], + /* overloads */ &kOverloads[327], }, { /* [27] */ /* fn dpdxFine(f32) -> f32 */ /* fn dpdxFine(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[330], + /* overloads */ &kOverloads[329], }, { /* [28] */ /* fn dpdy(f32) -> f32 */ /* fn dpdy(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[332], + /* overloads */ &kOverloads[331], }, { /* [29] */ /* fn dpdyCoarse(f32) -> f32 */ /* fn dpdyCoarse(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[334], + /* overloads */ &kOverloads[333], }, { /* [30] */ /* fn dpdyFine(f32) -> f32 */ /* fn dpdyFine(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[336], + /* overloads */ &kOverloads[335], }, { /* [31] */ /* fn exp(T) -> T */ /* fn exp(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[338], + /* overloads */ &kOverloads[337], }, { /* [32] */ /* fn exp2(T) -> T */ /* fn exp2(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[340], + /* overloads */ &kOverloads[339], }, { /* [33] */ /* fn extractBits(T, u32, u32) -> T */ /* fn extractBits(vec, u32, u32) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[342], + /* overloads */ &kOverloads[341], }, { /* [34] */ /* fn faceForward(vec, vec, vec) -> vec */ /* num overloads */ 1, - /* overloads */ &kOverloads[442], + /* overloads */ &kOverloads[441], }, { /* [35] */ /* fn firstLeadingBit(T) -> T */ /* fn firstLeadingBit(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[344], + /* overloads */ &kOverloads[343], }, { /* [36] */ /* fn firstTrailingBit(T) -> T */ /* fn firstTrailingBit(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[346], + /* overloads */ &kOverloads[345], }, { /* [37] */ /* fn floor(@test_value(1.5) T) -> T */ /* fn floor(@test_value(1.5) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[348], + /* overloads */ &kOverloads[347], }, { /* [38] */ /* fn fma(T, T, T) -> T */ /* fn fma(vec, vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[350], + /* overloads */ &kOverloads[349], }, { /* [39] */ /* fn fract(T) -> T */ /* fn fract(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[352], + /* overloads */ &kOverloads[351], }, { /* [40] */ /* fn frexp(T) -> __frexp_result */ /* fn frexp(vec) -> __frexp_result_vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[354], + /* overloads */ &kOverloads[353], }, { /* [41] */ /* fn fwidth(f32) -> f32 */ /* fn fwidth(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[356], + /* overloads */ &kOverloads[355], }, { /* [42] */ /* fn fwidthCoarse(f32) -> f32 */ /* fn fwidthCoarse(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[358], + /* overloads */ &kOverloads[357], }, { /* [43] */ /* fn fwidthFine(f32) -> f32 */ /* fn fwidthFine(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[360], + /* overloads */ &kOverloads[359], }, { /* [44] */ /* fn insertBits(T, T, u32, u32) -> T */ /* fn insertBits(vec, vec, u32, u32) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[362], + /* overloads */ &kOverloads[361], }, { /* [45] */ /* fn inverseSqrt(T) -> T */ /* fn inverseSqrt(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[364], + /* overloads */ &kOverloads[363], }, { /* [46] */ /* fn ldexp(T, i32) -> T */ /* fn ldexp(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[366], + /* overloads */ &kOverloads[365], }, { /* [47] */ /* fn length(T) -> T */ /* fn length(vec) -> T */ /* num overloads */ 2, - /* overloads */ &kOverloads[368], + /* overloads */ &kOverloads[367], }, { /* [48] */ /* fn log(T) -> T */ /* fn log(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[370], + /* overloads */ &kOverloads[369], }, { /* [49] */ /* fn log2(T) -> T */ /* fn log2(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[372], + /* overloads */ &kOverloads[371], }, { /* [50] */ /* fn max(T, T) -> T */ /* fn max(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[374], + /* overloads */ &kOverloads[373], }, { /* [51] */ /* fn min(T, T) -> T */ /* fn min(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[376], + /* overloads */ &kOverloads[375], }, { /* [52] */ @@ -14374,104 +14347,104 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn mix(vec, vec, vec) -> vec */ /* fn mix(vec, vec, T) -> vec */ /* num overloads */ 3, - /* overloads */ &kOverloads[267], + /* overloads */ &kOverloads[266], }, { /* [53] */ /* fn modf(T) -> __modf_result */ /* fn modf(vec) -> __modf_result_vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[378], + /* overloads */ &kOverloads[377], }, { /* [54] */ /* fn normalize(vec) -> vec */ /* num overloads */ 1, - /* overloads */ &kOverloads[443], + /* overloads */ &kOverloads[442], }, { /* [55] */ /* fn pack2x16float(vec2) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[444], + /* overloads */ &kOverloads[443], }, { /* [56] */ /* fn pack2x16snorm(vec2) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[445], + /* overloads */ &kOverloads[444], }, { /* [57] */ /* fn pack2x16unorm(vec2) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[446], + /* overloads */ &kOverloads[445], }, { /* [58] */ /* fn pack4x8snorm(vec4) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[447], + /* overloads */ &kOverloads[446], }, { /* [59] */ /* fn pack4x8unorm(vec4) -> u32 */ /* num overloads */ 1, - /* overloads */ &kOverloads[448], + /* overloads */ &kOverloads[447], }, { /* [60] */ /* fn pow(T, T) -> T */ /* fn pow(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[380], + /* overloads */ &kOverloads[379], }, { /* [61] */ /* fn quantizeToF16(f32) -> f32 */ /* fn quantizeToF16(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[382], + /* overloads */ &kOverloads[381], }, { /* [62] */ /* fn radians(T) -> T */ /* fn radians(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[384], + /* overloads */ &kOverloads[383], }, { /* [63] */ /* fn reflect(vec, vec) -> vec */ /* num overloads */ 1, - /* overloads */ &kOverloads[449], + /* overloads */ &kOverloads[448], }, { /* [64] */ /* fn refract(vec, vec, T) -> vec */ /* num overloads */ 1, - /* overloads */ &kOverloads[450], + /* overloads */ &kOverloads[449], }, { /* [65] */ /* fn reverseBits(T) -> T */ /* fn reverseBits(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[386], + /* overloads */ &kOverloads[385], }, { /* [66] */ /* fn round(@test_value(3.4) T) -> T */ /* fn round(@test_value(3.4) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[388], + /* overloads */ &kOverloads[387], }, { /* [67] */ /* fn saturate(@test_value(2) T) -> T */ /* fn saturate(@test_value(2) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[390], + /* overloads */ &kOverloads[389], }, { /* [68] */ @@ -14479,118 +14452,118 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn select(vec, vec, bool) -> vec */ /* fn select(vec, vec, vec) -> vec */ /* num overloads */ 3, - /* overloads */ &kOverloads[270], + /* overloads */ &kOverloads[269], }, { /* [69] */ /* fn sign(T) -> T */ /* fn sign(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[392], + /* overloads */ &kOverloads[391], }, { /* [70] */ /* fn sin(T) -> T */ /* fn sin(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[394], + /* overloads */ &kOverloads[393], }, { /* [71] */ /* fn sinh(T) -> T */ /* fn sinh(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[396], + /* overloads */ &kOverloads[395], }, { /* [72] */ /* fn smoothstep(@test_value(2) T, @test_value(4) T, @test_value(3) T) -> T */ /* fn smoothstep(@test_value(2) vec, @test_value(4) vec, @test_value(3) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[398], + /* overloads */ &kOverloads[397], }, { /* [73] */ /* fn sqrt(T) -> T */ /* fn sqrt(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[400], + /* overloads */ &kOverloads[399], }, { /* [74] */ /* fn step(T, T) -> T */ /* fn step(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[402], + /* overloads */ &kOverloads[401], }, { /* [75] */ /* fn storageBarrier() */ /* num overloads */ 1, - /* overloads */ &kOverloads[451], + /* overloads */ &kOverloads[450], }, { /* [76] */ /* fn tan(T) -> T */ /* fn tan(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[404], + /* overloads */ &kOverloads[403], }, { /* [77] */ /* fn tanh(T) -> T */ /* fn tanh(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[406], + /* overloads */ &kOverloads[405], }, { /* [78] */ /* fn transpose(mat) -> mat */ /* num overloads */ 1, - /* overloads */ &kOverloads[452], + /* overloads */ &kOverloads[451], }, { /* [79] */ /* fn trunc(@test_value(1.5) T) -> T */ /* fn trunc(@test_value(1.5) vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[408], + /* overloads */ &kOverloads[407], }, { /* [80] */ /* fn unpack2x16float(u32) -> vec2 */ /* num overloads */ 1, - /* overloads */ &kOverloads[453], + /* overloads */ &kOverloads[452], }, { /* [81] */ /* fn unpack2x16snorm(u32) -> vec2 */ /* num overloads */ 1, - /* overloads */ &kOverloads[454], + /* overloads */ &kOverloads[453], }, { /* [82] */ /* fn unpack2x16unorm(u32) -> vec2 */ /* num overloads */ 1, - /* overloads */ &kOverloads[455], + /* overloads */ &kOverloads[454], }, { /* [83] */ /* fn unpack4x8snorm(u32) -> vec4 */ /* num overloads */ 1, - /* overloads */ &kOverloads[456], + /* overloads */ &kOverloads[455], }, { /* [84] */ /* fn unpack4x8unorm(u32) -> vec4 */ /* num overloads */ 1, - /* overloads */ &kOverloads[457], + /* overloads */ &kOverloads[456], }, { /* [85] */ /* fn workgroupBarrier() */ /* num overloads */ 1, - /* overloads */ &kOverloads[458], + /* overloads */ &kOverloads[457], }, { /* [86] */ @@ -14639,7 +14612,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureGather(texture: texture_depth_cube, sampler: sampler, coords: vec3) -> vec4 */ /* fn textureGather(texture: texture_depth_cube_array, sampler: sampler, coords: vec3, array_index: A) -> vec4 */ /* num overloads */ 12, - /* overloads */ &kOverloads[72], + /* overloads */ &kOverloads[71], }, { /* [88] */ @@ -14650,7 +14623,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureGatherCompare(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3, depth_ref: f32) -> vec4 */ /* fn textureGatherCompare(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3, array_index: A, depth_ref: f32) -> vec4 */ /* num overloads */ 6, - /* overloads */ &kOverloads[160], + /* overloads */ &kOverloads[159], }, { /* [89] */ @@ -14660,7 +14633,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureNumLayers(texture: texture_depth_cube_array) -> u32 */ /* fn textureNumLayers(texture: texture_storage_2d_array) -> u32 */ /* num overloads */ 5, - /* overloads */ &kOverloads[232], + /* overloads */ &kOverloads[231], }, { /* [90] */ @@ -14675,14 +14648,14 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureNumLevels(texture: texture_depth_cube) -> u32 */ /* fn textureNumLevels(texture: texture_depth_cube_array) -> u32 */ /* num overloads */ 10, - /* overloads */ &kOverloads[107], + /* overloads */ &kOverloads[106], }, { /* [91] */ /* fn textureNumSamples(texture: texture_multisampled_2d) -> u32 */ /* fn textureNumSamples(texture: texture_depth_multisampled_2d) -> u32 */ /* num overloads */ 2, - /* overloads */ &kOverloads[410], + /* overloads */ &kOverloads[409], }, { /* [92] */ @@ -14715,7 +14688,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureSampleBias(texture: texture_cube, sampler: sampler, coords: vec3, bias: f32) -> vec4 */ /* fn textureSampleBias(texture: texture_cube_array, sampler: sampler, coords: vec3, array_index: A, bias: f32) -> vec4 */ /* num overloads */ 8, - /* overloads */ &kOverloads[144], + /* overloads */ &kOverloads[143], }, { /* [94] */ @@ -14726,7 +14699,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureSampleCompare(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3, depth_ref: f32) -> f32 */ /* fn textureSampleCompare(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3, array_index: A, depth_ref: f32) -> f32 */ /* num overloads */ 6, - /* overloads */ &kOverloads[166], + /* overloads */ &kOverloads[165], }, { /* [95] */ @@ -14737,7 +14710,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureSampleCompareLevel(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3, depth_ref: f32) -> f32 */ /* fn textureSampleCompareLevel(texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3, array_index: A, depth_ref: f32) -> f32 */ /* num overloads */ 6, - /* overloads */ &kOverloads[172], + /* overloads */ &kOverloads[171], }, { /* [96] */ @@ -14750,7 +14723,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureSampleGrad(texture: texture_cube, sampler: sampler, coords: vec3, ddx: vec3, ddy: vec3) -> vec4 */ /* fn textureSampleGrad(texture: texture_cube_array, sampler: sampler, coords: vec3, array_index: A, ddx: vec3, ddy: vec3) -> vec4 */ /* num overloads */ 8, - /* overloads */ &kOverloads[152], + /* overloads */ &kOverloads[151], }, { /* [97] */ @@ -14768,16 +14741,15 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureSampleLevel(texture: texture_depth_2d_array, sampler: sampler, coords: vec2, array_index: A, level: L, @const offset: vec2) -> f32 */ /* fn textureSampleLevel(texture: texture_depth_cube, sampler: sampler, coords: vec3, level: L) -> f32 */ /* fn textureSampleLevel(texture: texture_depth_cube_array, sampler: sampler, coords: vec3, array_index: A, level: L) -> f32 */ - /* fn textureSampleLevel(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 */ - /* num overloads */ 15, - /* overloads */ &kOverloads[42], + /* num overloads */ 14, + /* overloads */ &kOverloads[57], }, { /* [98] */ /* fn textureSampleBaseClampToEdge(texture: texture_2d, sampler: sampler, coords: vec2) -> vec4 */ /* fn textureSampleBaseClampToEdge(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 */ /* num overloads */ 2, - /* overloads */ &kOverloads[412], + /* overloads */ &kOverloads[411], }, { /* [99] */ @@ -14794,7 +14766,7 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureStore(texture: texture_storage_2d_array, coords: vec2, array_index: A, value: vec4) */ /* fn textureStore(texture: texture_storage_3d, coords: vec3, value: vec4) */ /* num overloads */ 12, - /* overloads */ &kOverloads[84], + /* overloads */ &kOverloads[83], }, { /* [100] */ @@ -14808,79 +14780,79 @@ constexpr IntrinsicInfo kBuiltins[] = { /* fn textureLoad(texture: texture_depth_multisampled_2d, coords: vec2, sample_index: S) -> f32 */ /* fn textureLoad(texture: texture_external, coords: vec2) -> vec4 */ /* num overloads */ 9, - /* overloads */ &kOverloads[117], + /* overloads */ &kOverloads[116], }, { /* [101] */ /* fn atomicLoad(ptr, read_write>) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[459], + /* overloads */ &kOverloads[458], }, { /* [102] */ /* fn atomicStore(ptr, read_write>, T) */ /* num overloads */ 1, - /* overloads */ &kOverloads[460], + /* overloads */ &kOverloads[459], }, { /* [103] */ /* fn atomicAdd(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[461], + /* overloads */ &kOverloads[460], }, { /* [104] */ /* fn atomicSub(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[462], + /* overloads */ &kOverloads[461], }, { /* [105] */ /* fn atomicMax(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[463], + /* overloads */ &kOverloads[462], }, { /* [106] */ /* fn atomicMin(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[464], + /* overloads */ &kOverloads[463], }, { /* [107] */ /* fn atomicAnd(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[465], + /* overloads */ &kOverloads[464], }, { /* [108] */ /* fn atomicOr(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[466], + /* overloads */ &kOverloads[465], }, { /* [109] */ /* fn atomicXor(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[467], + /* overloads */ &kOverloads[466], }, { /* [110] */ /* fn atomicExchange(ptr, read_write>, T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[468], + /* overloads */ &kOverloads[467], }, { /* [111] */ /* fn atomicCompareExchangeWeak(ptr, read_write>, T, T) -> __atomic_compare_exchange_result */ /* num overloads */ 1, - /* overloads */ &kOverloads[469], + /* overloads */ &kOverloads[468], }, { /* [112] */ /* fn _tint_materialize(T) -> T */ /* num overloads */ 1, - /* overloads */ &kOverloads[470], + /* overloads */ &kOverloads[469], }, }; @@ -14890,21 +14862,21 @@ constexpr IntrinsicInfo kUnaryOperators[] = { /* op !(bool) -> bool */ /* op !(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[414], + /* overloads */ &kOverloads[413], }, { /* [1] */ /* op ~(T) -> T */ /* op ~(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[416], + /* overloads */ &kOverloads[415], }, { /* [2] */ /* op -(T) -> T */ /* op -(vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[418], + /* overloads */ &kOverloads[417], }, }; constexpr uint8_t kUnaryOperatorNot = 0; @@ -14920,7 +14892,7 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op +(T, vec) -> vec */ /* op +(mat, mat) -> mat */ /* num overloads */ 5, - /* overloads */ &kOverloads[237], + /* overloads */ &kOverloads[236], }, { /* [1] */ @@ -14930,7 +14902,7 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op -(T, vec) -> vec */ /* op -(mat, mat) -> mat */ /* num overloads */ 5, - /* overloads */ &kOverloads[242], + /* overloads */ &kOverloads[241], }, { /* [2] */ @@ -14944,7 +14916,7 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op *(vec, mat) -> vec */ /* op *(mat, mat) -> mat */ /* num overloads */ 9, - /* overloads */ &kOverloads[126], + /* overloads */ &kOverloads[125], }, { /* [3] */ @@ -14953,7 +14925,7 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op /(vec, T) -> vec */ /* op /(T, vec) -> vec */ /* num overloads */ 4, - /* overloads */ &kOverloads[247], + /* overloads */ &kOverloads[246], }, { /* [4] */ @@ -14962,14 +14934,14 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op %(vec, T) -> vec */ /* op %(T, vec) -> vec */ /* num overloads */ 4, - /* overloads */ &kOverloads[251], + /* overloads */ &kOverloads[250], }, { /* [5] */ /* op ^(T, T) -> T */ /* op ^(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[420], + /* overloads */ &kOverloads[419], }, { /* [6] */ @@ -14978,7 +14950,7 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op &(T, T) -> T */ /* op &(vec, vec) -> vec */ /* num overloads */ 4, - /* overloads */ &kOverloads[255], + /* overloads */ &kOverloads[254], }, { /* [7] */ @@ -14987,61 +14959,61 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op |(T, T) -> T */ /* op |(vec, vec) -> vec */ /* num overloads */ 4, - /* overloads */ &kOverloads[259], + /* overloads */ &kOverloads[258], }, { /* [8] */ /* op &&(bool, bool) -> bool */ /* num overloads */ 1, - /* overloads */ &kOverloads[471], + /* overloads */ &kOverloads[470], }, { /* [9] */ /* op ||(bool, bool) -> bool */ /* num overloads */ 1, - /* overloads */ &kOverloads[472], + /* overloads */ &kOverloads[471], }, { /* [10] */ /* op ==(T, T) -> bool */ /* op ==(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[422], + /* overloads */ &kOverloads[421], }, { /* [11] */ /* op !=(T, T) -> bool */ /* op !=(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[424], + /* overloads */ &kOverloads[423], }, { /* [12] */ /* op <(T, T) -> bool */ /* op <(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[426], + /* overloads */ &kOverloads[425], }, { /* [13] */ /* op >(T, T) -> bool */ /* op >(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[428], + /* overloads */ &kOverloads[427], }, { /* [14] */ /* op <=(T, T) -> bool */ /* op <=(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[430], + /* overloads */ &kOverloads[429], }, { /* [15] */ /* op >=(T, T) -> bool */ /* op >=(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[432], + /* overloads */ &kOverloads[431], }, { /* [16] */ @@ -15050,14 +15022,14 @@ constexpr IntrinsicInfo kBinaryOperators[] = { /* op <<(T, u32) -> T */ /* op <<(vec, vec) -> vec */ /* num overloads */ 4, - /* overloads */ &kOverloads[263], + /* overloads */ &kOverloads[262], }, { /* [17] */ /* op >>(T, u32) -> T */ /* op >>(vec, vec) -> vec */ /* num overloads */ 2, - /* overloads */ &kOverloads[434], + /* overloads */ &kOverloads[433], }, }; constexpr uint8_t kBinaryOperatorPlus = 0; @@ -15086,7 +15058,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* init i32(i32) -> i32 */ /* conv i32(T) -> i32 */ /* num overloads */ 3, - /* overloads */ &kOverloads[273], + /* overloads */ &kOverloads[272], }, { /* [1] */ @@ -15094,7 +15066,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* init u32(u32) -> u32 */ /* conv u32(T) -> u32 */ /* num overloads */ 3, - /* overloads */ &kOverloads[276], + /* overloads */ &kOverloads[275], }, { /* [2] */ @@ -15102,7 +15074,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* init f32(f32) -> f32 */ /* conv f32(T) -> f32 */ /* num overloads */ 3, - /* overloads */ &kOverloads[279], + /* overloads */ &kOverloads[278], }, { /* [3] */ @@ -15110,7 +15082,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* init f16(f16) -> f16 */ /* conv f16(T) -> f16 */ /* num overloads */ 3, - /* overloads */ &kOverloads[282], + /* overloads */ &kOverloads[281], }, { /* [4] */ @@ -15118,7 +15090,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* init bool(bool) -> bool */ /* conv bool(T) -> bool */ /* num overloads */ 3, - /* overloads */ &kOverloads[285], + /* overloads */ &kOverloads[284], }, { /* [5] */ @@ -15132,7 +15104,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv vec2(vec2) -> vec2 */ /* conv vec2(vec2) -> vec2 */ /* num overloads */ 9, - /* overloads */ &kOverloads[135], + /* overloads */ &kOverloads[134], }, { /* [6] */ @@ -15148,7 +15120,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv vec3(vec3) -> vec3 */ /* conv vec3(vec3) -> vec3 */ /* num overloads */ 11, - /* overloads */ &kOverloads[96], + /* overloads */ &kOverloads[95], }, { /* [7] */ @@ -15168,7 +15140,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv vec4(vec4) -> vec4 */ /* conv vec4(vec4) -> vec4 */ /* num overloads */ 15, - /* overloads */ &kOverloads[57], + /* overloads */ &kOverloads[42], }, { /* [8] */ @@ -15179,7 +15151,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat2x2(mat2x2) -> mat2x2 */ /* conv mat2x2(mat2x2) -> mat2x2 */ /* num overloads */ 6, - /* overloads */ &kOverloads[178], + /* overloads */ &kOverloads[177], }, { /* [9] */ @@ -15190,7 +15162,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat2x3(mat2x3) -> mat2x3 */ /* conv mat2x3(mat2x3) -> mat2x3 */ /* num overloads */ 6, - /* overloads */ &kOverloads[184], + /* overloads */ &kOverloads[183], }, { /* [10] */ @@ -15201,7 +15173,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat2x4(mat2x4) -> mat2x4 */ /* conv mat2x4(mat2x4) -> mat2x4 */ /* num overloads */ 6, - /* overloads */ &kOverloads[190], + /* overloads */ &kOverloads[189], }, { /* [11] */ @@ -15212,7 +15184,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat3x2(mat3x2) -> mat3x2 */ /* conv mat3x2(mat3x2) -> mat3x2 */ /* num overloads */ 6, - /* overloads */ &kOverloads[196], + /* overloads */ &kOverloads[195], }, { /* [12] */ @@ -15223,7 +15195,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat3x3(mat3x3) -> mat3x3 */ /* conv mat3x3(mat3x3) -> mat3x3 */ /* num overloads */ 6, - /* overloads */ &kOverloads[202], + /* overloads */ &kOverloads[201], }, { /* [13] */ @@ -15234,7 +15206,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat3x4(mat3x4) -> mat3x4 */ /* conv mat3x4(mat3x4) -> mat3x4 */ /* num overloads */ 6, - /* overloads */ &kOverloads[208], + /* overloads */ &kOverloads[207], }, { /* [14] */ @@ -15245,7 +15217,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat4x2(mat4x2) -> mat4x2 */ /* conv mat4x2(mat4x2) -> mat4x2 */ /* num overloads */ 6, - /* overloads */ &kOverloads[214], + /* overloads */ &kOverloads[213], }, { /* [15] */ @@ -15256,7 +15228,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat4x3(mat4x3) -> mat4x3 */ /* conv mat4x3(mat4x3) -> mat4x3 */ /* num overloads */ 6, - /* overloads */ &kOverloads[220], + /* overloads */ &kOverloads[219], }, { /* [16] */ @@ -15267,7 +15239,7 @@ constexpr IntrinsicInfo kInitializersAndConverters[] = { /* conv mat4x4(mat4x4) -> mat4x4 */ /* conv mat4x4(mat4x4) -> mat4x4 */ /* num overloads */ 6, - /* overloads */ &kOverloads[226], + /* overloads */ &kOverloads[225], }, }; diff --git a/src/tint/transform/multiplanar_external_texture.cc b/src/tint/transform/multiplanar_external_texture.cc index c3ebf4a124..0667ae9ad5 100644 --- a/src/tint/transform/multiplanar_external_texture.cc +++ b/src/tint/transform/multiplanar_external_texture.cc @@ -211,8 +211,6 @@ struct MultiplanarExternalTexture::State { switch (builtin->Type()) { case sem::BuiltinType::kTextureLoad: return createTextureLoad(call, syms); - case sem::BuiltinType::kTextureSampleLevel: - return createTextureSampleLevel(expr, syms); case sem::BuiltinType::kTextureSampleBaseClampToEdge: return createTextureSampleBaseClampToEdge(expr, syms); default: @@ -315,15 +313,6 @@ struct MultiplanarExternalTexture::State { const ast::CallExpression* plane_0_call = nullptr; const ast::CallExpression* plane_1_call = nullptr; switch (call_type) { - case sem::BuiltinType::kTextureSampleLevel: - // TODO(crbug.com/tint/1671): DEPRECATED - // textureSampleLevel(plane0, smp, coord, 0.0); - single_plane_call = b.Call("textureSampleLevel", "plane0", "smp", "coord", 0_a); - // textureSampleLevel(plane0, smp, coord, 0.0); - plane_0_call = b.Call("textureSampleLevel", "plane0", "smp", "coord", 0_a); - // textureSampleLevel(plane1, smp, coord, 0.0); - plane_1_call = b.Call("textureSampleLevel", "plane1", "smp", "coord", 0_a); - break; case sem::BuiltinType::kTextureSampleBaseClampToEdge: stmts.Push(b.Decl(b.Let( "plane0_dims", @@ -399,54 +388,6 @@ struct MultiplanarExternalTexture::State { return stmts; } - /// Creates the textureSampleExternal function if needed and returns a call expression to it. - /// TODO(crbug.com/tint/1671): DEPRECATED: Replaced with createTextureSampleBaseClampToEdge(). - /// @param expr the call expression being transformed - /// @param syms the expanded symbols to be used in the new call - /// @returns a call expression to textureSampleExternal - const ast::CallExpression* createTextureSampleLevel(const ast::CallExpression* expr, - NewBindingSymbols syms) { - const ast::Expression* plane_0_binding_param = ctx.Clone(expr->args[0]); - - if (expr->args.Length() != 3) { - TINT_ICE(Transform, b.Diagnostics()) << "expected textureSampleLevel call with a " - "texture_external to have 3 parameters, found " - << expr->args.Length() << " parameters"; - } - - // TextureSampleExternal calls the gammaCorrection function, so ensure it - // exists. - if (!gamma_correction_sym.IsValid()) { - createGammaCorrectionFn(); - } - - if (!texture_sample_external_sym.IsValid()) { - texture_sample_external_sym = b.Symbols().New("textureSampleExternal"); - - // Emit the textureSampleExternal function. - b.Func( - texture_sample_external_sym, - utils::Vector{ - b.Param("plane0", b.ty.sampled_texture(ast::TextureDimension::k2d, b.ty.f32())), - b.Param("plane1", b.ty.sampled_texture(ast::TextureDimension::k2d, b.ty.f32())), - b.Param("smp", b.ty.sampler(ast::SamplerKind::kSampler)), - b.Param("coord", b.ty.vec2(b.ty.f32())), - b.Param("params", b.ty.type_name(params_struct_sym)), - }, - b.ty.vec4(b.ty.f32()), - buildTextureBuiltinBody(sem::BuiltinType::kTextureSampleLevel)); - } - - const ast::IdentifierExpression* exp = b.Expr(texture_sample_external_sym); - return b.Call(exp, utils::Vector{ - plane_0_binding_param, - b.Expr(syms.plane_1), - ctx.Clone(expr->args[1]), - ctx.Clone(expr->args[2]), - b.Expr(syms.params), - }); - } - /// Creates the textureSampleExternal function if needed and returns a call expression to it. /// @param expr the call expression being transformed /// @param syms the expanded symbols to be used in the new call diff --git a/src/tint/transform/multiplanar_external_texture_test.cc b/src/tint/transform/multiplanar_external_texture_test.cc index 8f2b01451e..dbfbc8db69 100644 --- a/src/tint/transform/multiplanar_external_texture_test.cc +++ b/src/tint/transform/multiplanar_external_texture_test.cc @@ -65,24 +65,6 @@ fn f(ext_tex : texture_external) {} EXPECT_TRUE(ShouldRun(src, data)); } -// Running the transform without passing in data for the new bindings should result in an error. -TEST_F(MultiplanarExternalTextureTest, ErrorNoPassedData_SampleLevel) { - auto* src = R"( -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy); -} -)"; - auto* expect = - R"(error: missing new binding point data for tint::transform::MultiplanarExternalTexture)"; - - auto got = Run(src); - EXPECT_EQ(expect, str(got)); -} - // Running the transform without passing in data for the new bindings should result in an error. TEST_F(MultiplanarExternalTextureTest, ErrorNoPassedData_SampleBaseClampToEdge) { auto* src = R"( @@ -101,29 +83,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Running the transform with incorrect binding data should result in an error. -TEST_F(MultiplanarExternalTextureTest, ErrorIncorrectBindingPont_SampleLevel) { - auto* src = R"( -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy); -} -)"; - - auto* expect = R"(error: missing new binding points for texture_external at binding {0,1})"; - - DataMap data; - // This bindings map specifies 0,0 as the location of the texture_external, - // which is incorrect. - data.Add( - MultiplanarExternalTexture::BindingsMap{{{0, 0}, {{0, 1}, {0, 2}}}}); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Running the transform with incorrect binding data should result in an error. TEST_F(MultiplanarExternalTextureTest, ErrorIncorrectBindingPont_SampleBaseClampToEdge) { auto* src = R"( @@ -257,82 +216,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Test that the transform works with a textureSampleLevel call. -TEST_F(MultiplanarExternalTextureTest, BasicTextureSampleLevel) { - auto* src = R"( -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy); -} -)"; - - auto* expect = R"( -struct GammaTransferParams { - G : f32, - A : f32, - B : f32, - C : f32, - D : f32, - E : f32, - F : f32, - padding : u32, -} - -struct ExternalTextureParams { - numPlanes : u32, - doYuvToRgbConversionOnly : u32, - yuvToRgbConversionMatrix : mat3x4, - gammaDecodeParams : GammaTransferParams, - gammaEncodeParams : GammaTransferParams, - gamutConversionMatrix : mat3x3, -} - -@group(0) @binding(2) var ext_tex_plane_1 : texture_2d; - -@group(0) @binding(3) var ext_tex_params : ExternalTextureParams; - -@group(0) @binding(0) var s : sampler; - -@group(0) @binding(1) var ext_tex : texture_2d; - -fn gammaCorrection(v : vec3, params : GammaTransferParams) -> vec3 { - let cond = (abs(v) < vec3(params.D)); - let t = (sign(v) * ((params.C * abs(v)) + params.F)); - let f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return select(f, t, cond); -} - -fn textureSampleExternal(plane0 : texture_2d, plane1 : texture_2d, smp : sampler, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureSampleLevel(plane0, smp, coord, 0).rgb; - } else { - color = (vec4(textureSampleLevel(plane0, smp, coord, 0).r, textureSampleLevel(plane1, smp, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleExternal(ext_tex, ext_tex_plane_1, s, coord.xy, ext_tex_params); -} -)"; - - DataMap data; - data.Add( - MultiplanarExternalTexture::BindingsMap{{{0, 1}, {{0, 2}, {0, 3}}}}); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Test that the transform works with a textureSampleBaseClampToEdge call. TEST_F(MultiplanarExternalTextureTest, BasicTextureSampleBaseClampToEdge) { auto* src = R"( @@ -415,82 +298,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Test that the transform works with a textureSampleLevel call. -TEST_F(MultiplanarExternalTextureTest, BasicTextureSampleLevel_OutOfOrder) { - auto* src = R"( -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy); -} - -@group(0) @binding(1) var ext_tex : texture_external; -@group(0) @binding(0) var s : sampler; -)"; - - auto* expect = R"( -struct GammaTransferParams { - G : f32, - A : f32, - B : f32, - C : f32, - D : f32, - E : f32, - F : f32, - padding : u32, -} - -struct ExternalTextureParams { - numPlanes : u32, - doYuvToRgbConversionOnly : u32, - yuvToRgbConversionMatrix : mat3x4, - gammaDecodeParams : GammaTransferParams, - gammaEncodeParams : GammaTransferParams, - gamutConversionMatrix : mat3x3, -} - -@group(0) @binding(2) var ext_tex_plane_1 : texture_2d; - -@group(0) @binding(3) var ext_tex_params : ExternalTextureParams; - -fn gammaCorrection(v : vec3, params : GammaTransferParams) -> vec3 { - let cond = (abs(v) < vec3(params.D)); - let t = (sign(v) * ((params.C * abs(v)) + params.F)); - let f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return select(f, t, cond); -} - -fn textureSampleExternal(plane0 : texture_2d, plane1 : texture_2d, smp : sampler, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureSampleLevel(plane0, smp, coord, 0).rgb; - } else { - color = (vec4(textureSampleLevel(plane0, smp, coord, 0).r, textureSampleLevel(plane1, smp, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleExternal(ext_tex, ext_tex_plane_1, s, coord.xy, ext_tex_params); -} - -@group(0) @binding(1) var ext_tex : texture_2d; - -@group(0) @binding(0) var s : sampler; -)"; - - DataMap data; - data.Add( - MultiplanarExternalTexture::BindingsMap{{{0, 1}, {{0, 2}, {0, 3}}}}); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Test that the transform works with a textureSampleBaseClampToEdge call. TEST_F(MultiplanarExternalTextureTest, BasicTextureSampleBaseClampToEdge_OutOfOrder) { auto* src = R"( @@ -757,97 +564,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Tests that the transform works with both a textureSampleLevel and textureLoad call. -TEST_F(MultiplanarExternalTextureTest, TextureSampleAndTextureLoad) { - auto* src = R"( -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy) + textureLoad(ext_tex, vec2(1, 1)); -} -)"; - - auto* expect = R"( -struct GammaTransferParams { - G : f32, - A : f32, - B : f32, - C : f32, - D : f32, - E : f32, - F : f32, - padding : u32, -} - -struct ExternalTextureParams { - numPlanes : u32, - doYuvToRgbConversionOnly : u32, - yuvToRgbConversionMatrix : mat3x4, - gammaDecodeParams : GammaTransferParams, - gammaEncodeParams : GammaTransferParams, - gamutConversionMatrix : mat3x3, -} - -@group(0) @binding(2) var ext_tex_plane_1 : texture_2d; - -@group(0) @binding(3) var ext_tex_params : ExternalTextureParams; - -@group(0) @binding(0) var s : sampler; - -@group(0) @binding(1) var ext_tex : texture_2d; - -fn gammaCorrection(v : vec3, params : GammaTransferParams) -> vec3 { - let cond = (abs(v) < vec3(params.D)); - let t = (sign(v) * ((params.C * abs(v)) + params.F)); - let f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return select(f, t, cond); -} - -fn textureSampleExternal(plane0 : texture_2d, plane1 : texture_2d, smp : sampler, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureSampleLevel(plane0, smp, coord, 0).rgb; - } else { - color = (vec4(textureSampleLevel(plane0, smp, coord, 0).r, textureSampleLevel(plane1, smp, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -fn textureLoadExternal(plane0 : texture_2d, plane1 : texture_2d, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureLoad(plane0, coord, 0).rgb; - } else { - color = (vec4(textureLoad(plane0, coord, 0).r, textureLoad(plane1, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return (textureSampleExternal(ext_tex, ext_tex_plane_1, s, coord.xy, ext_tex_params) + textureLoadExternal(ext_tex, ext_tex_plane_1, vec2(1, 1), ext_tex_params)); -} -)"; - - DataMap data; - data.Add( - MultiplanarExternalTexture::BindingsMap{{{0, 1}, {{0, 2}, {0, 3}}}}); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Tests that the transform works with both a textureSampleBaseClampToEdge and textureLoad call. TEST_F(MultiplanarExternalTextureTest, TextureSampleBaseClampToEdgeAndTextureLoad) { auto* src = R"( @@ -945,97 +661,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Tests that the transform works with both a textureSampleLevel and textureLoad call. -TEST_F(MultiplanarExternalTextureTest, TextureSampleAndTextureLoad_OutOfOrder) { - auto* src = R"( -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy) + textureLoad(ext_tex, vec2(1, 1)); -} - -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; -)"; - - auto* expect = R"( -struct GammaTransferParams { - G : f32, - A : f32, - B : f32, - C : f32, - D : f32, - E : f32, - F : f32, - padding : u32, -} - -struct ExternalTextureParams { - numPlanes : u32, - doYuvToRgbConversionOnly : u32, - yuvToRgbConversionMatrix : mat3x4, - gammaDecodeParams : GammaTransferParams, - gammaEncodeParams : GammaTransferParams, - gamutConversionMatrix : mat3x3, -} - -@group(0) @binding(2) var ext_tex_plane_1 : texture_2d; - -@group(0) @binding(3) var ext_tex_params : ExternalTextureParams; - -fn gammaCorrection(v : vec3, params : GammaTransferParams) -> vec3 { - let cond = (abs(v) < vec3(params.D)); - let t = (sign(v) * ((params.C * abs(v)) + params.F)); - let f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return select(f, t, cond); -} - -fn textureSampleExternal(plane0 : texture_2d, plane1 : texture_2d, smp : sampler, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureSampleLevel(plane0, smp, coord, 0).rgb; - } else { - color = (vec4(textureSampleLevel(plane0, smp, coord, 0).r, textureSampleLevel(plane1, smp, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -fn textureLoadExternal(plane0 : texture_2d, plane1 : texture_2d, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureLoad(plane0, coord, 0).rgb; - } else { - color = (vec4(textureLoad(plane0, coord, 0).r, textureLoad(plane1, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return (textureSampleExternal(ext_tex, ext_tex_plane_1, s, coord.xy, ext_tex_params) + textureLoadExternal(ext_tex, ext_tex_plane_1, vec2(1, 1), ext_tex_params)); -} - -@group(0) @binding(0) var s : sampler; - -@group(0) @binding(1) var ext_tex : texture_2d; -)"; - - DataMap data; - data.Add( - MultiplanarExternalTexture::BindingsMap{{{0, 1}, {{0, 2}, {0, 3}}}}); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Tests that the transform works with both a textureSampleBaseClampToEdge and textureLoad call. TEST_F(MultiplanarExternalTextureTest, TextureSampleBaseClampToEdgeAndTextureLoad_OutOfOrder) { auto* src = R"( @@ -1133,107 +758,6 @@ fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { EXPECT_EQ(expect, str(got)); } -// Tests that the transform works with many instances of texture_external. -TEST_F(MultiplanarExternalTextureTest, ManyTextureSampleLevel) { - auto* src = R"( -@group(0) @binding(0) var s : sampler; -@group(0) @binding(1) var ext_tex : texture_external; -@group(0) @binding(2) var ext_tex_1 : texture_external; -@group(0) @binding(3) var ext_tex_2 : texture_external; -@group(1) @binding(0) var ext_tex_3 : texture_external; - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return textureSampleLevel(ext_tex, s, coord.xy) + textureSampleLevel(ext_tex_1, s, coord.xy) + textureSampleLevel(ext_tex_2, s, coord.xy) + textureSampleLevel(ext_tex_3, s, coord.xy); -} -)"; - - auto* expect = R"( -struct GammaTransferParams { - G : f32, - A : f32, - B : f32, - C : f32, - D : f32, - E : f32, - F : f32, - padding : u32, -} - -struct ExternalTextureParams { - numPlanes : u32, - doYuvToRgbConversionOnly : u32, - yuvToRgbConversionMatrix : mat3x4, - gammaDecodeParams : GammaTransferParams, - gammaEncodeParams : GammaTransferParams, - gamutConversionMatrix : mat3x3, -} - -@group(0) @binding(4) var ext_tex_plane_1 : texture_2d; - -@group(0) @binding(5) var ext_tex_params : ExternalTextureParams; - -@group(0) @binding(6) var ext_tex_plane_1_1 : texture_2d; - -@group(0) @binding(7) var ext_tex_params_1 : ExternalTextureParams; - -@group(0) @binding(8) var ext_tex_plane_1_2 : texture_2d; - -@group(0) @binding(9) var ext_tex_params_2 : ExternalTextureParams; - -@group(1) @binding(1) var ext_tex_plane_1_3 : texture_2d; - -@group(1) @binding(2) var ext_tex_params_3 : ExternalTextureParams; - -@group(0) @binding(0) var s : sampler; - -@group(0) @binding(1) var ext_tex : texture_2d; - -@group(0) @binding(2) var ext_tex_1 : texture_2d; - -@group(0) @binding(3) var ext_tex_2 : texture_2d; - -@group(1) @binding(0) var ext_tex_3 : texture_2d; - -fn gammaCorrection(v : vec3, params : GammaTransferParams) -> vec3 { - let cond = (abs(v) < vec3(params.D)); - let t = (sign(v) * ((params.C * abs(v)) + params.F)); - let f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return select(f, t, cond); -} - -fn textureSampleExternal(plane0 : texture_2d, plane1 : texture_2d, smp : sampler, coord : vec2, params : ExternalTextureParams) -> vec4 { - var color : vec3; - if ((params.numPlanes == 1)) { - color = textureSampleLevel(plane0, smp, coord, 0).rgb; - } else { - color = (vec4(textureSampleLevel(plane0, smp, coord, 0).r, textureSampleLevel(plane1, smp, coord, 0).rg, 1) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1); -} - -@fragment -fn main(@builtin(position) coord : vec4) -> @location(0) vec4 { - return (((textureSampleExternal(ext_tex, ext_tex_plane_1, s, coord.xy, ext_tex_params) + textureSampleExternal(ext_tex_1, ext_tex_plane_1_1, s, coord.xy, ext_tex_params_1)) + textureSampleExternal(ext_tex_2, ext_tex_plane_1_2, s, coord.xy, ext_tex_params_2)) + textureSampleExternal(ext_tex_3, ext_tex_plane_1_3, s, coord.xy, ext_tex_params_3)); -} -)"; - - DataMap data; - data.Add(MultiplanarExternalTexture::BindingsMap{ - {{0, 1}, {{0, 4}, {0, 5}}}, - {{0, 2}, {{0, 6}, {0, 7}}}, - {{0, 3}, {{0, 8}, {0, 9}}}, - {{1, 0}, {{1, 1}, {1, 2}}}, - }); - auto got = Run(src, data); - EXPECT_EQ(expect, str(got)); -} - // Tests that the transform works with many instances of texture_external. TEST_F(MultiplanarExternalTextureTest, ManyTextureSampleBaseClampToEdge) { auto* src = R"( diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl deleted file mode 100644 index 8743f47a50..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2022 The Tint Authors. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//////////////////////////////////////////////////////////////////////////////// -// File generated by tools/src/cmd/gen -// using the template: -// test/tint/builtins/gen/gen.wgsl.tmpl -// -// Do not modify this file directly -//////////////////////////////////////////////////////////////////////////////// - -@group(1) @binding(0) var arg_0: texture_external; -@group(1) @binding(1) var arg_1: sampler; - -// fn textureSampleLevel(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 -fn textureSampleLevel_979816() { - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); -} - -@vertex -fn vertex_main() -> @builtin(position) vec4 { - textureSampleLevel_979816(); - return vec4(); -} - -@fragment -fn fragment_main() { - textureSampleLevel_979816(); -} - -@compute @workgroup_size(1) -fn compute_main() { - textureSampleLevel_979816(); -} diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.dxc.hlsl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.dxc.hlsl deleted file mode 100644 index 02e88ee9e3..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.dxc.hlsl +++ /dev/null @@ -1,116 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - float3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - float3x3 gamutConversionMatrix; -}; - -Texture2D ext_tex_plane_1 : register(t2, space1); -cbuffer cbuffer_ext_tex_params : register(b3, space1) { - uint4 ext_tex_params[11]; -}; -Texture2D arg_0 : register(t0, space1); -SamplerState arg_1 : register(s1, space1); - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - const bool3 cond = (abs(v) < float3((params.D).xxx)); - const float3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - const float3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), float3((params.G).xxx)) + params.E)); - return (cond ? t : f); -} - -float4 textureSampleExternal(Texture2D plane0, Texture2D plane1, SamplerState smp, float2 coord, ExternalTextureParams params) { - float3 color = float3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = plane0.SampleLevel(smp, coord, 0.0f).rgb; - } else { - color = mul(params.yuvToRgbConversionMatrix, float4(plane0.SampleLevel(smp, coord, 0.0f).r, plane1.SampleLevel(smp, coord, 0.0f).rg, 1.0f)); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = mul(color, params.gamutConversionMatrix); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -float3x4 tint_symbol_3(uint4 buffer[11], uint offset) { - const uint scalar_offset = ((offset + 0u)) / 4; - const uint scalar_offset_1 = ((offset + 16u)) / 4; - const uint scalar_offset_2 = ((offset + 32u)) / 4; - return float3x4(asfloat(buffer[scalar_offset / 4]), asfloat(buffer[scalar_offset_1 / 4]), asfloat(buffer[scalar_offset_2 / 4])); -} - -GammaTransferParams tint_symbol_5(uint4 buffer[11], uint offset) { - const uint scalar_offset_3 = ((offset + 0u)) / 4; - const uint scalar_offset_4 = ((offset + 4u)) / 4; - const uint scalar_offset_5 = ((offset + 8u)) / 4; - const uint scalar_offset_6 = ((offset + 12u)) / 4; - const uint scalar_offset_7 = ((offset + 16u)) / 4; - const uint scalar_offset_8 = ((offset + 20u)) / 4; - const uint scalar_offset_9 = ((offset + 24u)) / 4; - const uint scalar_offset_10 = ((offset + 28u)) / 4; - const GammaTransferParams tint_symbol_9 = {asfloat(buffer[scalar_offset_3 / 4][scalar_offset_3 % 4]), asfloat(buffer[scalar_offset_4 / 4][scalar_offset_4 % 4]), asfloat(buffer[scalar_offset_5 / 4][scalar_offset_5 % 4]), asfloat(buffer[scalar_offset_6 / 4][scalar_offset_6 % 4]), asfloat(buffer[scalar_offset_7 / 4][scalar_offset_7 % 4]), asfloat(buffer[scalar_offset_8 / 4][scalar_offset_8 % 4]), asfloat(buffer[scalar_offset_9 / 4][scalar_offset_9 % 4]), buffer[scalar_offset_10 / 4][scalar_offset_10 % 4]}; - return tint_symbol_9; -} - -float3x3 tint_symbol_7(uint4 buffer[11], uint offset) { - const uint scalar_offset_11 = ((offset + 0u)) / 4; - const uint scalar_offset_12 = ((offset + 16u)) / 4; - const uint scalar_offset_13 = ((offset + 32u)) / 4; - return float3x3(asfloat(buffer[scalar_offset_11 / 4].xyz), asfloat(buffer[scalar_offset_12 / 4].xyz), asfloat(buffer[scalar_offset_13 / 4].xyz)); -} - -ExternalTextureParams tint_symbol_1(uint4 buffer[11], uint offset) { - const uint scalar_offset_14 = ((offset + 0u)) / 4; - const uint scalar_offset_15 = ((offset + 4u)) / 4; - const ExternalTextureParams tint_symbol_10 = {buffer[scalar_offset_14 / 4][scalar_offset_14 % 4], buffer[scalar_offset_15 / 4][scalar_offset_15 % 4], tint_symbol_3(buffer, (offset + 16u)), tint_symbol_5(buffer, (offset + 64u)), tint_symbol_5(buffer, (offset + 96u)), tint_symbol_7(buffer, (offset + 128u))}; - return tint_symbol_10; -} - -void textureSampleLevel_979816() { - float4 res = textureSampleExternal(arg_0, ext_tex_plane_1, arg_1, (1.0f).xx, tint_symbol_1(ext_tex_params, 0u)); -} - -struct tint_symbol { - float4 value : SV_Position; -}; - -float4 vertex_main_inner() { - textureSampleLevel_979816(); - return (0.0f).xxxx; -} - -tint_symbol vertex_main() { - const float4 inner_result = vertex_main_inner(); - tint_symbol wrapper_result = (tint_symbol)0; - wrapper_result.value = inner_result; - return wrapper_result; -} - -void fragment_main() { - textureSampleLevel_979816(); - return; -} - -[numthreads(1, 1, 1)] -void compute_main() { - textureSampleLevel_979816(); - return; -} diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.fxc.hlsl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.fxc.hlsl deleted file mode 100644 index 02e88ee9e3..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.fxc.hlsl +++ /dev/null @@ -1,116 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - float3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - float3x3 gamutConversionMatrix; -}; - -Texture2D ext_tex_plane_1 : register(t2, space1); -cbuffer cbuffer_ext_tex_params : register(b3, space1) { - uint4 ext_tex_params[11]; -}; -Texture2D arg_0 : register(t0, space1); -SamplerState arg_1 : register(s1, space1); - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - const bool3 cond = (abs(v) < float3((params.D).xxx)); - const float3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - const float3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), float3((params.G).xxx)) + params.E)); - return (cond ? t : f); -} - -float4 textureSampleExternal(Texture2D plane0, Texture2D plane1, SamplerState smp, float2 coord, ExternalTextureParams params) { - float3 color = float3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = plane0.SampleLevel(smp, coord, 0.0f).rgb; - } else { - color = mul(params.yuvToRgbConversionMatrix, float4(plane0.SampleLevel(smp, coord, 0.0f).r, plane1.SampleLevel(smp, coord, 0.0f).rg, 1.0f)); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = mul(color, params.gamutConversionMatrix); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -float3x4 tint_symbol_3(uint4 buffer[11], uint offset) { - const uint scalar_offset = ((offset + 0u)) / 4; - const uint scalar_offset_1 = ((offset + 16u)) / 4; - const uint scalar_offset_2 = ((offset + 32u)) / 4; - return float3x4(asfloat(buffer[scalar_offset / 4]), asfloat(buffer[scalar_offset_1 / 4]), asfloat(buffer[scalar_offset_2 / 4])); -} - -GammaTransferParams tint_symbol_5(uint4 buffer[11], uint offset) { - const uint scalar_offset_3 = ((offset + 0u)) / 4; - const uint scalar_offset_4 = ((offset + 4u)) / 4; - const uint scalar_offset_5 = ((offset + 8u)) / 4; - const uint scalar_offset_6 = ((offset + 12u)) / 4; - const uint scalar_offset_7 = ((offset + 16u)) / 4; - const uint scalar_offset_8 = ((offset + 20u)) / 4; - const uint scalar_offset_9 = ((offset + 24u)) / 4; - const uint scalar_offset_10 = ((offset + 28u)) / 4; - const GammaTransferParams tint_symbol_9 = {asfloat(buffer[scalar_offset_3 / 4][scalar_offset_3 % 4]), asfloat(buffer[scalar_offset_4 / 4][scalar_offset_4 % 4]), asfloat(buffer[scalar_offset_5 / 4][scalar_offset_5 % 4]), asfloat(buffer[scalar_offset_6 / 4][scalar_offset_6 % 4]), asfloat(buffer[scalar_offset_7 / 4][scalar_offset_7 % 4]), asfloat(buffer[scalar_offset_8 / 4][scalar_offset_8 % 4]), asfloat(buffer[scalar_offset_9 / 4][scalar_offset_9 % 4]), buffer[scalar_offset_10 / 4][scalar_offset_10 % 4]}; - return tint_symbol_9; -} - -float3x3 tint_symbol_7(uint4 buffer[11], uint offset) { - const uint scalar_offset_11 = ((offset + 0u)) / 4; - const uint scalar_offset_12 = ((offset + 16u)) / 4; - const uint scalar_offset_13 = ((offset + 32u)) / 4; - return float3x3(asfloat(buffer[scalar_offset_11 / 4].xyz), asfloat(buffer[scalar_offset_12 / 4].xyz), asfloat(buffer[scalar_offset_13 / 4].xyz)); -} - -ExternalTextureParams tint_symbol_1(uint4 buffer[11], uint offset) { - const uint scalar_offset_14 = ((offset + 0u)) / 4; - const uint scalar_offset_15 = ((offset + 4u)) / 4; - const ExternalTextureParams tint_symbol_10 = {buffer[scalar_offset_14 / 4][scalar_offset_14 % 4], buffer[scalar_offset_15 / 4][scalar_offset_15 % 4], tint_symbol_3(buffer, (offset + 16u)), tint_symbol_5(buffer, (offset + 64u)), tint_symbol_5(buffer, (offset + 96u)), tint_symbol_7(buffer, (offset + 128u))}; - return tint_symbol_10; -} - -void textureSampleLevel_979816() { - float4 res = textureSampleExternal(arg_0, ext_tex_plane_1, arg_1, (1.0f).xx, tint_symbol_1(ext_tex_params, 0u)); -} - -struct tint_symbol { - float4 value : SV_Position; -}; - -float4 vertex_main_inner() { - textureSampleLevel_979816(); - return (0.0f).xxxx; -} - -tint_symbol vertex_main() { - const float4 inner_result = vertex_main_inner(); - tint_symbol wrapper_result = (tint_symbol)0; - wrapper_result.value = inner_result; - return wrapper_result; -} - -void fragment_main() { - textureSampleLevel_979816(); - return; -} - -[numthreads(1, 1, 1)] -void compute_main() { - textureSampleLevel_979816(); - return; -} diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.glsl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.glsl deleted file mode 100644 index 2edd5001cc..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.glsl +++ /dev/null @@ -1,200 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -#version 310 es - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, vec2(1.0f), ext_tex_params.inner); -} - -vec4 vertex_main() { - textureSampleLevel_979816(); - return vec4(0.0f); -} - -void main() { - gl_PointSize = 1.0; - vec4 inner_result = vertex_main(); - gl_Position = inner_result; - gl_Position.y = -(gl_Position.y); - gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w); - return; -} -#version 310 es -precision mediump float; - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, vec2(1.0f), ext_tex_params.inner); -} - -void fragment_main() { - textureSampleLevel_979816(); -} - -void main() { - fragment_main(); - return; -} -#version 310 es - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, vec2(1.0f), ext_tex_params.inner); -} - -void compute_main() { - textureSampleLevel_979816(); -} - -layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; -void main() { - compute_main(); - return; -} diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.msl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.msl deleted file mode 100644 index 3820718bb9..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.msl +++ /dev/null @@ -1,93 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -#include - -using namespace metal; - -template -struct tint_array { - const constant T& operator[](size_t i) const constant { return elements[i]; } - device T& operator[](size_t i) device { return elements[i]; } - const device T& operator[](size_t i) const device { return elements[i]; } - thread T& operator[](size_t i) thread { return elements[i]; } - const thread T& operator[](size_t i) const thread { return elements[i]; } - threadgroup T& operator[](size_t i) threadgroup { return elements[i]; } - const threadgroup T& operator[](size_t i) const threadgroup { return elements[i]; } - T elements[N]; -}; - -struct GammaTransferParams { - /* 0x0000 */ float G; - /* 0x0004 */ float A; - /* 0x0008 */ float B; - /* 0x000c */ float C; - /* 0x0010 */ float D; - /* 0x0014 */ float E; - /* 0x0018 */ float F; - /* 0x001c */ uint padding; -}; - -struct ExternalTextureParams { - /* 0x0000 */ uint numPlanes; - /* 0x0004 */ uint doYuvToRgbConversionOnly; - /* 0x0008 */ tint_array tint_pad; - /* 0x0010 */ float3x4 yuvToRgbConversionMatrix; - /* 0x0040 */ GammaTransferParams gammaDecodeParams; - /* 0x0060 */ GammaTransferParams gammaEncodeParams; - /* 0x0080 */ float3x3 gamutConversionMatrix; -}; - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - bool3 const cond = (fabs(v) < float3(params.D)); - float3 const t = (sign(v) * ((params.C * fabs(v)) + params.F)); - float3 const f = (sign(v) * (pow(((params.A * fabs(v)) + params.B), float3(params.G)) + params.E)); - return select(f, t, cond); -} - -float4 textureSampleExternal(texture2d plane0, texture2d plane1, sampler smp, float2 coord, ExternalTextureParams params) { - float3 color = 0.0f; - if ((params.numPlanes == 1u)) { - color = float4(plane0.sample(smp, coord, level(0.0f))).rgb; - } else { - color = (float4(plane0.sample(smp, coord, level(0.0f))[0], float4(plane1.sample(smp, coord, level(0.0f))).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -void textureSampleLevel_979816(texture2d tint_symbol_1, texture2d tint_symbol_2, sampler tint_symbol_3, const constant ExternalTextureParams* const tint_symbol_4) { - float4 res = textureSampleExternal(tint_symbol_1, tint_symbol_2, tint_symbol_3, float2(1.0f), *(tint_symbol_4)); -} - -struct tint_symbol { - float4 value [[position]]; -}; - -float4 vertex_main_inner(texture2d tint_symbol_5, texture2d tint_symbol_6, sampler tint_symbol_7, const constant ExternalTextureParams* const tint_symbol_8) { - textureSampleLevel_979816(tint_symbol_5, tint_symbol_6, tint_symbol_7, tint_symbol_8); - return float4(0.0f); -} - -vertex tint_symbol vertex_main(texture2d tint_symbol_9 [[texture(0)]], texture2d tint_symbol_10 [[texture(1)]], sampler tint_symbol_11 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_12 [[buffer(2)]]) { - float4 const inner_result = vertex_main_inner(tint_symbol_9, tint_symbol_10, tint_symbol_11, tint_symbol_12); - tint_symbol wrapper_result = {}; - wrapper_result.value = inner_result; - return wrapper_result; -} - -fragment void fragment_main(texture2d tint_symbol_13 [[texture(0)]], texture2d tint_symbol_14 [[texture(1)]], sampler tint_symbol_15 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_16 [[buffer(2)]]) { - textureSampleLevel_979816(tint_symbol_13, tint_symbol_14, tint_symbol_15, tint_symbol_16); - return; -} - -kernel void compute_main(texture2d tint_symbol_17 [[texture(0)]], texture2d tint_symbol_18 [[texture(1)]], sampler tint_symbol_19 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_20 [[buffer(2)]]) { - textureSampleLevel_979816(tint_symbol_17, tint_symbol_18, tint_symbol_19, tint_symbol_20); - return; -} - diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.spvasm b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.spvasm deleted file mode 100644 index 8842b64abb..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.spvasm +++ /dev/null @@ -1,259 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -; SPIR-V -; Version: 1.3 -; Generator: Google Tint Compiler; 0 -; Bound: 144 -; Schema: 0 - OpCapability Shader - %31 = OpExtInstImport "GLSL.std.450" - OpMemoryModel Logical GLSL450 - OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size - OpEntryPoint Fragment %fragment_main "fragment_main" - OpEntryPoint GLCompute %compute_main "compute_main" - OpExecutionMode %fragment_main OriginUpperLeft - OpExecutionMode %compute_main LocalSize 1 1 1 - OpName %value "value" - OpName %vertex_point_size "vertex_point_size" - OpName %ext_tex_plane_1 "ext_tex_plane_1" - OpName %ext_tex_params_block "ext_tex_params_block" - OpMemberName %ext_tex_params_block 0 "inner" - OpName %ExternalTextureParams "ExternalTextureParams" - OpMemberName %ExternalTextureParams 0 "numPlanes" - OpMemberName %ExternalTextureParams 1 "doYuvToRgbConversionOnly" - OpMemberName %ExternalTextureParams 2 "yuvToRgbConversionMatrix" - OpMemberName %ExternalTextureParams 3 "gammaDecodeParams" - OpName %GammaTransferParams "GammaTransferParams" - OpMemberName %GammaTransferParams 0 "G" - OpMemberName %GammaTransferParams 1 "A" - OpMemberName %GammaTransferParams 2 "B" - OpMemberName %GammaTransferParams 3 "C" - OpMemberName %GammaTransferParams 4 "D" - OpMemberName %GammaTransferParams 5 "E" - OpMemberName %GammaTransferParams 6 "F" - OpMemberName %GammaTransferParams 7 "padding" - OpMemberName %ExternalTextureParams 4 "gammaEncodeParams" - OpMemberName %ExternalTextureParams 5 "gamutConversionMatrix" - OpName %ext_tex_params "ext_tex_params" - OpName %arg_0 "arg_0" - OpName %arg_1 "arg_1" - OpName %gammaCorrection "gammaCorrection" - OpName %v "v" - OpName %params "params" - OpName %textureSampleExternal "textureSampleExternal" - OpName %plane0 "plane0" - OpName %plane1 "plane1" - OpName %smp "smp" - OpName %coord "coord" - OpName %params_0 "params" - OpName %color "color" - OpName %textureSampleLevel_979816 "textureSampleLevel_979816" - OpName %res "res" - OpName %vertex_main_inner "vertex_main_inner" - OpName %vertex_main "vertex_main" - OpName %fragment_main "fragment_main" - OpName %compute_main "compute_main" - OpDecorate %value BuiltIn Position - OpDecorate %vertex_point_size BuiltIn PointSize - OpDecorate %ext_tex_plane_1 DescriptorSet 1 - OpDecorate %ext_tex_plane_1 Binding 2 - OpDecorate %ext_tex_params_block Block - OpMemberDecorate %ext_tex_params_block 0 Offset 0 - OpMemberDecorate %ExternalTextureParams 0 Offset 0 - OpMemberDecorate %ExternalTextureParams 1 Offset 4 - OpMemberDecorate %ExternalTextureParams 2 Offset 16 - OpMemberDecorate %ExternalTextureParams 2 ColMajor - OpMemberDecorate %ExternalTextureParams 2 MatrixStride 16 - OpMemberDecorate %ExternalTextureParams 3 Offset 64 - OpMemberDecorate %GammaTransferParams 0 Offset 0 - OpMemberDecorate %GammaTransferParams 1 Offset 4 - OpMemberDecorate %GammaTransferParams 2 Offset 8 - OpMemberDecorate %GammaTransferParams 3 Offset 12 - OpMemberDecorate %GammaTransferParams 4 Offset 16 - OpMemberDecorate %GammaTransferParams 5 Offset 20 - OpMemberDecorate %GammaTransferParams 6 Offset 24 - OpMemberDecorate %GammaTransferParams 7 Offset 28 - OpMemberDecorate %ExternalTextureParams 4 Offset 96 - OpMemberDecorate %ExternalTextureParams 5 Offset 128 - OpMemberDecorate %ExternalTextureParams 5 ColMajor - OpMemberDecorate %ExternalTextureParams 5 MatrixStride 16 - OpDecorate %ext_tex_params NonWritable - OpDecorate %ext_tex_params DescriptorSet 1 - OpDecorate %ext_tex_params Binding 3 - OpDecorate %arg_0 DescriptorSet 1 - OpDecorate %arg_0 Binding 0 - OpDecorate %arg_1 DescriptorSet 1 - OpDecorate %arg_1 Binding 1 - %float = OpTypeFloat 32 - %v4float = OpTypeVector %float 4 -%_ptr_Output_v4float = OpTypePointer Output %v4float - %5 = OpConstantNull %v4float - %value = OpVariable %_ptr_Output_v4float Output %5 -%_ptr_Output_float = OpTypePointer Output %float - %8 = OpConstantNull %float -%vertex_point_size = OpVariable %_ptr_Output_float Output %8 - %11 = OpTypeImage %float 2D 0 0 0 1 Unknown -%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11 -%ext_tex_plane_1 = OpVariable %_ptr_UniformConstant_11 UniformConstant - %uint = OpTypeInt 32 0 -%mat3v4float = OpTypeMatrix %v4float 3 -%GammaTransferParams = OpTypeStruct %float %float %float %float %float %float %float %uint - %v3float = OpTypeVector %float 3 -%mat3v3float = OpTypeMatrix %v3float 3 -%ExternalTextureParams = OpTypeStruct %uint %uint %mat3v4float %GammaTransferParams %GammaTransferParams %mat3v3float -%ext_tex_params_block = OpTypeStruct %ExternalTextureParams -%_ptr_Uniform_ext_tex_params_block = OpTypePointer Uniform %ext_tex_params_block -%ext_tex_params = OpVariable %_ptr_Uniform_ext_tex_params_block Uniform - %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant - %24 = OpTypeSampler -%_ptr_UniformConstant_24 = OpTypePointer UniformConstant %24 - %arg_1 = OpVariable %_ptr_UniformConstant_24 UniformConstant - %25 = OpTypeFunction %v3float %v3float %GammaTransferParams - %bool = OpTypeBool - %v3bool = OpTypeVector %bool 3 -%_ptr_Function_v3float = OpTypePointer Function %v3float - %45 = OpConstantNull %v3float - %v2float = OpTypeVector %float 2 - %65 = OpTypeFunction %v4float %11 %11 %24 %v2float %ExternalTextureParams - %uint_1 = OpConstant %uint 1 - %82 = OpTypeSampledImage %11 - %float_1 = OpConstant %float 1 - %98 = OpConstantNull %uint - %void = OpTypeVoid - %116 = OpTypeFunction %void - %124 = OpConstantComposite %v2float %float_1 %float_1 - %uint_0 = OpConstant %uint 0 -%_ptr_Uniform_ExternalTextureParams = OpTypePointer Uniform %ExternalTextureParams -%_ptr_Function_v4float = OpTypePointer Function %v4float - %131 = OpTypeFunction %v4float -%gammaCorrection = OpFunction %v3float None %25 - %v = OpFunctionParameter %v3float - %params = OpFunctionParameter %GammaTransferParams - %29 = OpLabel - %43 = OpVariable %_ptr_Function_v3float Function %45 - %55 = OpVariable %_ptr_Function_v3float Function %45 - %61 = OpVariable %_ptr_Function_v3float Function %45 - %30 = OpExtInst %v3float %31 FAbs %v - %32 = OpCompositeExtract %float %params 4 - %33 = OpCompositeConstruct %v3float %32 %32 %32 - %34 = OpFOrdLessThan %v3bool %30 %33 - %37 = OpExtInst %v3float %31 FSign %v - %38 = OpCompositeExtract %float %params 3 - %39 = OpExtInst %v3float %31 FAbs %v - %40 = OpVectorTimesScalar %v3float %39 %38 - %41 = OpCompositeExtract %float %params 6 - %46 = OpCompositeConstruct %v3float %41 %41 %41 - %42 = OpFAdd %v3float %40 %46 - %47 = OpFMul %v3float %37 %42 - %48 = OpExtInst %v3float %31 FSign %v - %50 = OpCompositeExtract %float %params 1 - %51 = OpExtInst %v3float %31 FAbs %v - %52 = OpVectorTimesScalar %v3float %51 %50 - %53 = OpCompositeExtract %float %params 2 - %56 = OpCompositeConstruct %v3float %53 %53 %53 - %54 = OpFAdd %v3float %52 %56 - %57 = OpCompositeExtract %float %params 0 - %58 = OpCompositeConstruct %v3float %57 %57 %57 - %49 = OpExtInst %v3float %31 Pow %54 %58 - %59 = OpCompositeExtract %float %params 5 - %62 = OpCompositeConstruct %v3float %59 %59 %59 - %60 = OpFAdd %v3float %49 %62 - %63 = OpFMul %v3float %48 %60 - %64 = OpSelect %v3float %34 %47 %63 - OpReturnValue %64 - OpFunctionEnd -%textureSampleExternal = OpFunction %v4float None %65 - %plane0 = OpFunctionParameter %11 - %plane1 = OpFunctionParameter %11 - %smp = OpFunctionParameter %24 - %coord = OpFunctionParameter %v2float - %params_0 = OpFunctionParameter %ExternalTextureParams - %73 = OpLabel - %color = OpVariable %_ptr_Function_v3float Function %45 - %75 = OpCompositeExtract %uint %params_0 0 - %77 = OpIEqual %bool %75 %uint_1 - OpSelectionMerge %78 None - OpBranchConditional %77 %79 %80 - %79 = OpLabel - %83 = OpSampledImage %82 %plane0 %smp - %81 = OpImageSampleExplicitLod %v4float %83 %coord Lod %8 - %84 = OpVectorShuffle %v3float %81 %81 0 1 2 - OpStore %color %84 - OpBranch %78 - %80 = OpLabel - %86 = OpSampledImage %82 %plane0 %smp - %85 = OpImageSampleExplicitLod %v4float %86 %coord Lod %8 - %87 = OpCompositeExtract %float %85 0 - %89 = OpSampledImage %82 %plane1 %smp - %88 = OpImageSampleExplicitLod %v4float %89 %coord Lod %8 - %90 = OpVectorShuffle %v2float %88 %88 0 1 - %91 = OpCompositeExtract %float %90 0 - %92 = OpCompositeExtract %float %90 1 - %94 = OpCompositeConstruct %v4float %87 %91 %92 %float_1 - %95 = OpCompositeExtract %mat3v4float %params_0 2 - %96 = OpVectorTimesMatrix %v3float %94 %95 - OpStore %color %96 - OpBranch %78 - %78 = OpLabel - %97 = OpCompositeExtract %uint %params_0 1 - %99 = OpIEqual %bool %97 %98 - OpSelectionMerge %100 None - OpBranchConditional %99 %101 %100 - %101 = OpLabel - %103 = OpLoad %v3float %color - %104 = OpCompositeExtract %GammaTransferParams %params_0 3 - %102 = OpFunctionCall %v3float %gammaCorrection %103 %104 - OpStore %color %102 - %105 = OpCompositeExtract %mat3v3float %params_0 5 - %106 = OpLoad %v3float %color - %107 = OpMatrixTimesVector %v3float %105 %106 - OpStore %color %107 - %109 = OpLoad %v3float %color - %110 = OpCompositeExtract %GammaTransferParams %params_0 4 - %108 = OpFunctionCall %v3float %gammaCorrection %109 %110 - OpStore %color %108 - OpBranch %100 - %100 = OpLabel - %111 = OpLoad %v3float %color - %112 = OpCompositeExtract %float %111 0 - %113 = OpCompositeExtract %float %111 1 - %114 = OpCompositeExtract %float %111 2 - %115 = OpCompositeConstruct %v4float %112 %113 %114 %float_1 - OpReturnValue %115 - OpFunctionEnd -%textureSampleLevel_979816 = OpFunction %void None %116 - %119 = OpLabel - %res = OpVariable %_ptr_Function_v4float Function %5 - %121 = OpLoad %11 %arg_0 - %122 = OpLoad %11 %ext_tex_plane_1 - %123 = OpLoad %24 %arg_1 - %127 = OpAccessChain %_ptr_Uniform_ExternalTextureParams %ext_tex_params %uint_0 - %128 = OpLoad %ExternalTextureParams %127 - %120 = OpFunctionCall %v4float %textureSampleExternal %121 %122 %123 %124 %128 - OpStore %res %120 - OpReturn - OpFunctionEnd -%vertex_main_inner = OpFunction %v4float None %131 - %133 = OpLabel - %134 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturnValue %5 - OpFunctionEnd -%vertex_main = OpFunction %void None %116 - %136 = OpLabel - %137 = OpFunctionCall %v4float %vertex_main_inner - OpStore %value %137 - OpStore %vertex_point_size %float_1 - OpReturn - OpFunctionEnd -%fragment_main = OpFunction %void None %116 - %139 = OpLabel - %140 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturn - OpFunctionEnd -%compute_main = OpFunction %void None %116 - %142 = OpLabel - %143 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturn - OpFunctionEnd diff --git a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.wgsl b/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.wgsl deleted file mode 100644 index db847872fc..0000000000 --- a/test/tint/builtins/gen/literal/textureSampleLevel/979816.wgsl.expected.wgsl +++ /dev/null @@ -1,27 +0,0 @@ -builtins/gen/literal/textureSampleLevel/979816.wgsl:28:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.f)); - ^^^^^^^^^^^^^^^^^^ - -@group(1) @binding(0) var arg_0 : texture_external; - -@group(1) @binding(1) var arg_1 : sampler; - -fn textureSampleLevel_979816() { - var res : vec4 = textureSampleLevel(arg_0, arg_1, vec2(1.0f)); -} - -@vertex -fn vertex_main() -> @builtin(position) vec4 { - textureSampleLevel_979816(); - return vec4(); -} - -@fragment -fn fragment_main() { - textureSampleLevel_979816(); -} - -@compute @workgroup_size(1) -fn compute_main() { - textureSampleLevel_979816(); -} diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl deleted file mode 100644 index 2bcb61c223..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 The Tint Authors. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//////////////////////////////////////////////////////////////////////////////// -// File generated by tools/src/cmd/gen -// using the template: -// test/tint/builtins/gen/gen.wgsl.tmpl -// -// Do not modify this file directly -//////////////////////////////////////////////////////////////////////////////// - -@group(1) @binding(0) var arg_0: texture_external; -@group(1) @binding(1) var arg_1: sampler; - -// fn textureSampleLevel(texture: texture_external, sampler: sampler, coords: vec2) -> vec4 -fn textureSampleLevel_979816() { - var arg_2 = vec2(1.f); - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); -} - -@vertex -fn vertex_main() -> @builtin(position) vec4 { - textureSampleLevel_979816(); - return vec4(); -} - -@fragment -fn fragment_main() { - textureSampleLevel_979816(); -} - -@compute @workgroup_size(1) -fn compute_main() { - textureSampleLevel_979816(); -} diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.dxc.hlsl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.dxc.hlsl deleted file mode 100644 index 115d746118..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.dxc.hlsl +++ /dev/null @@ -1,117 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - float3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - float3x3 gamutConversionMatrix; -}; - -Texture2D ext_tex_plane_1 : register(t2, space1); -cbuffer cbuffer_ext_tex_params : register(b3, space1) { - uint4 ext_tex_params[11]; -}; -Texture2D arg_0 : register(t0, space1); -SamplerState arg_1 : register(s1, space1); - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - const bool3 cond = (abs(v) < float3((params.D).xxx)); - const float3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - const float3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), float3((params.G).xxx)) + params.E)); - return (cond ? t : f); -} - -float4 textureSampleExternal(Texture2D plane0, Texture2D plane1, SamplerState smp, float2 coord, ExternalTextureParams params) { - float3 color = float3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = plane0.SampleLevel(smp, coord, 0.0f).rgb; - } else { - color = mul(params.yuvToRgbConversionMatrix, float4(plane0.SampleLevel(smp, coord, 0.0f).r, plane1.SampleLevel(smp, coord, 0.0f).rg, 1.0f)); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = mul(color, params.gamutConversionMatrix); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -float3x4 tint_symbol_3(uint4 buffer[11], uint offset) { - const uint scalar_offset = ((offset + 0u)) / 4; - const uint scalar_offset_1 = ((offset + 16u)) / 4; - const uint scalar_offset_2 = ((offset + 32u)) / 4; - return float3x4(asfloat(buffer[scalar_offset / 4]), asfloat(buffer[scalar_offset_1 / 4]), asfloat(buffer[scalar_offset_2 / 4])); -} - -GammaTransferParams tint_symbol_5(uint4 buffer[11], uint offset) { - const uint scalar_offset_3 = ((offset + 0u)) / 4; - const uint scalar_offset_4 = ((offset + 4u)) / 4; - const uint scalar_offset_5 = ((offset + 8u)) / 4; - const uint scalar_offset_6 = ((offset + 12u)) / 4; - const uint scalar_offset_7 = ((offset + 16u)) / 4; - const uint scalar_offset_8 = ((offset + 20u)) / 4; - const uint scalar_offset_9 = ((offset + 24u)) / 4; - const uint scalar_offset_10 = ((offset + 28u)) / 4; - const GammaTransferParams tint_symbol_9 = {asfloat(buffer[scalar_offset_3 / 4][scalar_offset_3 % 4]), asfloat(buffer[scalar_offset_4 / 4][scalar_offset_4 % 4]), asfloat(buffer[scalar_offset_5 / 4][scalar_offset_5 % 4]), asfloat(buffer[scalar_offset_6 / 4][scalar_offset_6 % 4]), asfloat(buffer[scalar_offset_7 / 4][scalar_offset_7 % 4]), asfloat(buffer[scalar_offset_8 / 4][scalar_offset_8 % 4]), asfloat(buffer[scalar_offset_9 / 4][scalar_offset_9 % 4]), buffer[scalar_offset_10 / 4][scalar_offset_10 % 4]}; - return tint_symbol_9; -} - -float3x3 tint_symbol_7(uint4 buffer[11], uint offset) { - const uint scalar_offset_11 = ((offset + 0u)) / 4; - const uint scalar_offset_12 = ((offset + 16u)) / 4; - const uint scalar_offset_13 = ((offset + 32u)) / 4; - return float3x3(asfloat(buffer[scalar_offset_11 / 4].xyz), asfloat(buffer[scalar_offset_12 / 4].xyz), asfloat(buffer[scalar_offset_13 / 4].xyz)); -} - -ExternalTextureParams tint_symbol_1(uint4 buffer[11], uint offset) { - const uint scalar_offset_14 = ((offset + 0u)) / 4; - const uint scalar_offset_15 = ((offset + 4u)) / 4; - const ExternalTextureParams tint_symbol_10 = {buffer[scalar_offset_14 / 4][scalar_offset_14 % 4], buffer[scalar_offset_15 / 4][scalar_offset_15 % 4], tint_symbol_3(buffer, (offset + 16u)), tint_symbol_5(buffer, (offset + 64u)), tint_symbol_5(buffer, (offset + 96u)), tint_symbol_7(buffer, (offset + 128u))}; - return tint_symbol_10; -} - -void textureSampleLevel_979816() { - float2 arg_2 = (1.0f).xx; - float4 res = textureSampleExternal(arg_0, ext_tex_plane_1, arg_1, arg_2, tint_symbol_1(ext_tex_params, 0u)); -} - -struct tint_symbol { - float4 value : SV_Position; -}; - -float4 vertex_main_inner() { - textureSampleLevel_979816(); - return (0.0f).xxxx; -} - -tint_symbol vertex_main() { - const float4 inner_result = vertex_main_inner(); - tint_symbol wrapper_result = (tint_symbol)0; - wrapper_result.value = inner_result; - return wrapper_result; -} - -void fragment_main() { - textureSampleLevel_979816(); - return; -} - -[numthreads(1, 1, 1)] -void compute_main() { - textureSampleLevel_979816(); - return; -} diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.fxc.hlsl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.fxc.hlsl deleted file mode 100644 index 115d746118..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.fxc.hlsl +++ /dev/null @@ -1,117 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - float3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - float3x3 gamutConversionMatrix; -}; - -Texture2D ext_tex_plane_1 : register(t2, space1); -cbuffer cbuffer_ext_tex_params : register(b3, space1) { - uint4 ext_tex_params[11]; -}; -Texture2D arg_0 : register(t0, space1); -SamplerState arg_1 : register(s1, space1); - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - const bool3 cond = (abs(v) < float3((params.D).xxx)); - const float3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - const float3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), float3((params.G).xxx)) + params.E)); - return (cond ? t : f); -} - -float4 textureSampleExternal(Texture2D plane0, Texture2D plane1, SamplerState smp, float2 coord, ExternalTextureParams params) { - float3 color = float3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = plane0.SampleLevel(smp, coord, 0.0f).rgb; - } else { - color = mul(params.yuvToRgbConversionMatrix, float4(plane0.SampleLevel(smp, coord, 0.0f).r, plane1.SampleLevel(smp, coord, 0.0f).rg, 1.0f)); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = mul(color, params.gamutConversionMatrix); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -float3x4 tint_symbol_3(uint4 buffer[11], uint offset) { - const uint scalar_offset = ((offset + 0u)) / 4; - const uint scalar_offset_1 = ((offset + 16u)) / 4; - const uint scalar_offset_2 = ((offset + 32u)) / 4; - return float3x4(asfloat(buffer[scalar_offset / 4]), asfloat(buffer[scalar_offset_1 / 4]), asfloat(buffer[scalar_offset_2 / 4])); -} - -GammaTransferParams tint_symbol_5(uint4 buffer[11], uint offset) { - const uint scalar_offset_3 = ((offset + 0u)) / 4; - const uint scalar_offset_4 = ((offset + 4u)) / 4; - const uint scalar_offset_5 = ((offset + 8u)) / 4; - const uint scalar_offset_6 = ((offset + 12u)) / 4; - const uint scalar_offset_7 = ((offset + 16u)) / 4; - const uint scalar_offset_8 = ((offset + 20u)) / 4; - const uint scalar_offset_9 = ((offset + 24u)) / 4; - const uint scalar_offset_10 = ((offset + 28u)) / 4; - const GammaTransferParams tint_symbol_9 = {asfloat(buffer[scalar_offset_3 / 4][scalar_offset_3 % 4]), asfloat(buffer[scalar_offset_4 / 4][scalar_offset_4 % 4]), asfloat(buffer[scalar_offset_5 / 4][scalar_offset_5 % 4]), asfloat(buffer[scalar_offset_6 / 4][scalar_offset_6 % 4]), asfloat(buffer[scalar_offset_7 / 4][scalar_offset_7 % 4]), asfloat(buffer[scalar_offset_8 / 4][scalar_offset_8 % 4]), asfloat(buffer[scalar_offset_9 / 4][scalar_offset_9 % 4]), buffer[scalar_offset_10 / 4][scalar_offset_10 % 4]}; - return tint_symbol_9; -} - -float3x3 tint_symbol_7(uint4 buffer[11], uint offset) { - const uint scalar_offset_11 = ((offset + 0u)) / 4; - const uint scalar_offset_12 = ((offset + 16u)) / 4; - const uint scalar_offset_13 = ((offset + 32u)) / 4; - return float3x3(asfloat(buffer[scalar_offset_11 / 4].xyz), asfloat(buffer[scalar_offset_12 / 4].xyz), asfloat(buffer[scalar_offset_13 / 4].xyz)); -} - -ExternalTextureParams tint_symbol_1(uint4 buffer[11], uint offset) { - const uint scalar_offset_14 = ((offset + 0u)) / 4; - const uint scalar_offset_15 = ((offset + 4u)) / 4; - const ExternalTextureParams tint_symbol_10 = {buffer[scalar_offset_14 / 4][scalar_offset_14 % 4], buffer[scalar_offset_15 / 4][scalar_offset_15 % 4], tint_symbol_3(buffer, (offset + 16u)), tint_symbol_5(buffer, (offset + 64u)), tint_symbol_5(buffer, (offset + 96u)), tint_symbol_7(buffer, (offset + 128u))}; - return tint_symbol_10; -} - -void textureSampleLevel_979816() { - float2 arg_2 = (1.0f).xx; - float4 res = textureSampleExternal(arg_0, ext_tex_plane_1, arg_1, arg_2, tint_symbol_1(ext_tex_params, 0u)); -} - -struct tint_symbol { - float4 value : SV_Position; -}; - -float4 vertex_main_inner() { - textureSampleLevel_979816(); - return (0.0f).xxxx; -} - -tint_symbol vertex_main() { - const float4 inner_result = vertex_main_inner(); - tint_symbol wrapper_result = (tint_symbol)0; - wrapper_result.value = inner_result; - return wrapper_result; -} - -void fragment_main() { - textureSampleLevel_979816(); - return; -} - -[numthreads(1, 1, 1)] -void compute_main() { - textureSampleLevel_979816(); - return; -} diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.glsl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.glsl deleted file mode 100644 index 6364e84c3b..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.glsl +++ /dev/null @@ -1,203 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -#version 310 es - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec2 arg_2 = vec2(1.0f); - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, arg_2, ext_tex_params.inner); -} - -vec4 vertex_main() { - textureSampleLevel_979816(); - return vec4(0.0f); -} - -void main() { - gl_PointSize = 1.0; - vec4 inner_result = vertex_main(); - gl_Position = inner_result; - gl_Position.y = -(gl_Position.y); - gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w); - return; -} -#version 310 es -precision mediump float; - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec2 arg_2 = vec2(1.0f); - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, arg_2, ext_tex_params.inner); -} - -void fragment_main() { - textureSampleLevel_979816(); -} - -void main() { - fragment_main(); - return; -} -#version 310 es - -struct GammaTransferParams { - float G; - float A; - float B; - float C; - float D; - float E; - float F; - uint padding; -}; - -struct ExternalTextureParams { - uint numPlanes; - uint doYuvToRgbConversionOnly; - mat3x4 yuvToRgbConversionMatrix; - GammaTransferParams gammaDecodeParams; - GammaTransferParams gammaEncodeParams; - mat3 gamutConversionMatrix; -}; - -layout(binding = 3, std140) uniform ext_tex_params_block_ubo { - ExternalTextureParams inner; -} ext_tex_params; - -vec3 gammaCorrection(vec3 v, GammaTransferParams params) { - bvec3 cond = lessThan(abs(v), vec3(params.D)); - vec3 t = (sign(v) * ((params.C * abs(v)) + params.F)); - vec3 f = (sign(v) * (pow(((params.A * abs(v)) + params.B), vec3(params.G)) + params.E)); - return mix(f, t, cond); -} - - -vec4 textureSampleExternal(highp sampler2D plane0_smp, highp sampler2D plane1_smp, vec2 coord, ExternalTextureParams params) { - vec3 color = vec3(0.0f, 0.0f, 0.0f); - if ((params.numPlanes == 1u)) { - color = textureLod(plane0_smp, coord, 0.0f).rgb; - } else { - color = (vec4(textureLod(plane0_smp, coord, 0.0f).r, textureLod(plane1_smp, coord, 0.0f).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return vec4(color, 1.0f); -} - -uniform highp sampler2D arg_0_arg_1; -uniform highp sampler2D ext_tex_plane_1_arg_1; -void textureSampleLevel_979816() { - vec2 arg_2 = vec2(1.0f); - vec4 res = textureSampleExternal(arg_0_arg_1, ext_tex_plane_1_arg_1, arg_2, ext_tex_params.inner); -} - -void compute_main() { - textureSampleLevel_979816(); -} - -layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; -void main() { - compute_main(); - return; -} diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.msl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.msl deleted file mode 100644 index c9d722eedf..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.msl +++ /dev/null @@ -1,94 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -#include - -using namespace metal; - -template -struct tint_array { - const constant T& operator[](size_t i) const constant { return elements[i]; } - device T& operator[](size_t i) device { return elements[i]; } - const device T& operator[](size_t i) const device { return elements[i]; } - thread T& operator[](size_t i) thread { return elements[i]; } - const thread T& operator[](size_t i) const thread { return elements[i]; } - threadgroup T& operator[](size_t i) threadgroup { return elements[i]; } - const threadgroup T& operator[](size_t i) const threadgroup { return elements[i]; } - T elements[N]; -}; - -struct GammaTransferParams { - /* 0x0000 */ float G; - /* 0x0004 */ float A; - /* 0x0008 */ float B; - /* 0x000c */ float C; - /* 0x0010 */ float D; - /* 0x0014 */ float E; - /* 0x0018 */ float F; - /* 0x001c */ uint padding; -}; - -struct ExternalTextureParams { - /* 0x0000 */ uint numPlanes; - /* 0x0004 */ uint doYuvToRgbConversionOnly; - /* 0x0008 */ tint_array tint_pad; - /* 0x0010 */ float3x4 yuvToRgbConversionMatrix; - /* 0x0040 */ GammaTransferParams gammaDecodeParams; - /* 0x0060 */ GammaTransferParams gammaEncodeParams; - /* 0x0080 */ float3x3 gamutConversionMatrix; -}; - -float3 gammaCorrection(float3 v, GammaTransferParams params) { - bool3 const cond = (fabs(v) < float3(params.D)); - float3 const t = (sign(v) * ((params.C * fabs(v)) + params.F)); - float3 const f = (sign(v) * (pow(((params.A * fabs(v)) + params.B), float3(params.G)) + params.E)); - return select(f, t, cond); -} - -float4 textureSampleExternal(texture2d plane0, texture2d plane1, sampler smp, float2 coord, ExternalTextureParams params) { - float3 color = 0.0f; - if ((params.numPlanes == 1u)) { - color = float4(plane0.sample(smp, coord, level(0.0f))).rgb; - } else { - color = (float4(plane0.sample(smp, coord, level(0.0f))[0], float4(plane1.sample(smp, coord, level(0.0f))).rg, 1.0f) * params.yuvToRgbConversionMatrix); - } - if ((params.doYuvToRgbConversionOnly == 0u)) { - color = gammaCorrection(color, params.gammaDecodeParams); - color = (params.gamutConversionMatrix * color); - color = gammaCorrection(color, params.gammaEncodeParams); - } - return float4(color, 1.0f); -} - -void textureSampleLevel_979816(texture2d tint_symbol_1, texture2d tint_symbol_2, sampler tint_symbol_3, const constant ExternalTextureParams* const tint_symbol_4) { - float2 arg_2 = float2(1.0f); - float4 res = textureSampleExternal(tint_symbol_1, tint_symbol_2, tint_symbol_3, arg_2, *(tint_symbol_4)); -} - -struct tint_symbol { - float4 value [[position]]; -}; - -float4 vertex_main_inner(texture2d tint_symbol_5, texture2d tint_symbol_6, sampler tint_symbol_7, const constant ExternalTextureParams* const tint_symbol_8) { - textureSampleLevel_979816(tint_symbol_5, tint_symbol_6, tint_symbol_7, tint_symbol_8); - return float4(0.0f); -} - -vertex tint_symbol vertex_main(texture2d tint_symbol_9 [[texture(0)]], texture2d tint_symbol_10 [[texture(1)]], sampler tint_symbol_11 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_12 [[buffer(2)]]) { - float4 const inner_result = vertex_main_inner(tint_symbol_9, tint_symbol_10, tint_symbol_11, tint_symbol_12); - tint_symbol wrapper_result = {}; - wrapper_result.value = inner_result; - return wrapper_result; -} - -fragment void fragment_main(texture2d tint_symbol_13 [[texture(0)]], texture2d tint_symbol_14 [[texture(1)]], sampler tint_symbol_15 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_16 [[buffer(2)]]) { - textureSampleLevel_979816(tint_symbol_13, tint_symbol_14, tint_symbol_15, tint_symbol_16); - return; -} - -kernel void compute_main(texture2d tint_symbol_17 [[texture(0)]], texture2d tint_symbol_18 [[texture(1)]], sampler tint_symbol_19 [[sampler(0)]], const constant ExternalTextureParams* tint_symbol_20 [[buffer(2)]]) { - textureSampleLevel_979816(tint_symbol_17, tint_symbol_18, tint_symbol_19, tint_symbol_20); - return; -} - diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.spvasm b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.spvasm deleted file mode 100644 index 58d21300f4..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.spvasm +++ /dev/null @@ -1,265 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -; SPIR-V -; Version: 1.3 -; Generator: Google Tint Compiler; 0 -; Bound: 148 -; Schema: 0 - OpCapability Shader - %31 = OpExtInstImport "GLSL.std.450" - OpMemoryModel Logical GLSL450 - OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size - OpEntryPoint Fragment %fragment_main "fragment_main" - OpEntryPoint GLCompute %compute_main "compute_main" - OpExecutionMode %fragment_main OriginUpperLeft - OpExecutionMode %compute_main LocalSize 1 1 1 - OpName %value "value" - OpName %vertex_point_size "vertex_point_size" - OpName %ext_tex_plane_1 "ext_tex_plane_1" - OpName %ext_tex_params_block "ext_tex_params_block" - OpMemberName %ext_tex_params_block 0 "inner" - OpName %ExternalTextureParams "ExternalTextureParams" - OpMemberName %ExternalTextureParams 0 "numPlanes" - OpMemberName %ExternalTextureParams 1 "doYuvToRgbConversionOnly" - OpMemberName %ExternalTextureParams 2 "yuvToRgbConversionMatrix" - OpMemberName %ExternalTextureParams 3 "gammaDecodeParams" - OpName %GammaTransferParams "GammaTransferParams" - OpMemberName %GammaTransferParams 0 "G" - OpMemberName %GammaTransferParams 1 "A" - OpMemberName %GammaTransferParams 2 "B" - OpMemberName %GammaTransferParams 3 "C" - OpMemberName %GammaTransferParams 4 "D" - OpMemberName %GammaTransferParams 5 "E" - OpMemberName %GammaTransferParams 6 "F" - OpMemberName %GammaTransferParams 7 "padding" - OpMemberName %ExternalTextureParams 4 "gammaEncodeParams" - OpMemberName %ExternalTextureParams 5 "gamutConversionMatrix" - OpName %ext_tex_params "ext_tex_params" - OpName %arg_0 "arg_0" - OpName %arg_1 "arg_1" - OpName %gammaCorrection "gammaCorrection" - OpName %v "v" - OpName %params "params" - OpName %textureSampleExternal "textureSampleExternal" - OpName %plane0 "plane0" - OpName %plane1 "plane1" - OpName %smp "smp" - OpName %coord "coord" - OpName %params_0 "params" - OpName %color "color" - OpName %textureSampleLevel_979816 "textureSampleLevel_979816" - OpName %arg_2 "arg_2" - OpName %res "res" - OpName %vertex_main_inner "vertex_main_inner" - OpName %vertex_main "vertex_main" - OpName %fragment_main "fragment_main" - OpName %compute_main "compute_main" - OpDecorate %value BuiltIn Position - OpDecorate %vertex_point_size BuiltIn PointSize - OpDecorate %ext_tex_plane_1 DescriptorSet 1 - OpDecorate %ext_tex_plane_1 Binding 2 - OpDecorate %ext_tex_params_block Block - OpMemberDecorate %ext_tex_params_block 0 Offset 0 - OpMemberDecorate %ExternalTextureParams 0 Offset 0 - OpMemberDecorate %ExternalTextureParams 1 Offset 4 - OpMemberDecorate %ExternalTextureParams 2 Offset 16 - OpMemberDecorate %ExternalTextureParams 2 ColMajor - OpMemberDecorate %ExternalTextureParams 2 MatrixStride 16 - OpMemberDecorate %ExternalTextureParams 3 Offset 64 - OpMemberDecorate %GammaTransferParams 0 Offset 0 - OpMemberDecorate %GammaTransferParams 1 Offset 4 - OpMemberDecorate %GammaTransferParams 2 Offset 8 - OpMemberDecorate %GammaTransferParams 3 Offset 12 - OpMemberDecorate %GammaTransferParams 4 Offset 16 - OpMemberDecorate %GammaTransferParams 5 Offset 20 - OpMemberDecorate %GammaTransferParams 6 Offset 24 - OpMemberDecorate %GammaTransferParams 7 Offset 28 - OpMemberDecorate %ExternalTextureParams 4 Offset 96 - OpMemberDecorate %ExternalTextureParams 5 Offset 128 - OpMemberDecorate %ExternalTextureParams 5 ColMajor - OpMemberDecorate %ExternalTextureParams 5 MatrixStride 16 - OpDecorate %ext_tex_params NonWritable - OpDecorate %ext_tex_params DescriptorSet 1 - OpDecorate %ext_tex_params Binding 3 - OpDecorate %arg_0 DescriptorSet 1 - OpDecorate %arg_0 Binding 0 - OpDecorate %arg_1 DescriptorSet 1 - OpDecorate %arg_1 Binding 1 - %float = OpTypeFloat 32 - %v4float = OpTypeVector %float 4 -%_ptr_Output_v4float = OpTypePointer Output %v4float - %5 = OpConstantNull %v4float - %value = OpVariable %_ptr_Output_v4float Output %5 -%_ptr_Output_float = OpTypePointer Output %float - %8 = OpConstantNull %float -%vertex_point_size = OpVariable %_ptr_Output_float Output %8 - %11 = OpTypeImage %float 2D 0 0 0 1 Unknown -%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11 -%ext_tex_plane_1 = OpVariable %_ptr_UniformConstant_11 UniformConstant - %uint = OpTypeInt 32 0 -%mat3v4float = OpTypeMatrix %v4float 3 -%GammaTransferParams = OpTypeStruct %float %float %float %float %float %float %float %uint - %v3float = OpTypeVector %float 3 -%mat3v3float = OpTypeMatrix %v3float 3 -%ExternalTextureParams = OpTypeStruct %uint %uint %mat3v4float %GammaTransferParams %GammaTransferParams %mat3v3float -%ext_tex_params_block = OpTypeStruct %ExternalTextureParams -%_ptr_Uniform_ext_tex_params_block = OpTypePointer Uniform %ext_tex_params_block -%ext_tex_params = OpVariable %_ptr_Uniform_ext_tex_params_block Uniform - %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant - %24 = OpTypeSampler -%_ptr_UniformConstant_24 = OpTypePointer UniformConstant %24 - %arg_1 = OpVariable %_ptr_UniformConstant_24 UniformConstant - %25 = OpTypeFunction %v3float %v3float %GammaTransferParams - %bool = OpTypeBool - %v3bool = OpTypeVector %bool 3 -%_ptr_Function_v3float = OpTypePointer Function %v3float - %45 = OpConstantNull %v3float - %v2float = OpTypeVector %float 2 - %65 = OpTypeFunction %v4float %11 %11 %24 %v2float %ExternalTextureParams - %uint_1 = OpConstant %uint 1 - %82 = OpTypeSampledImage %11 - %float_1 = OpConstant %float 1 - %98 = OpConstantNull %uint - %void = OpTypeVoid - %116 = OpTypeFunction %void - %120 = OpConstantComposite %v2float %float_1 %float_1 -%_ptr_Function_v2float = OpTypePointer Function %v2float - %123 = OpConstantNull %v2float - %uint_0 = OpConstant %uint 0 -%_ptr_Uniform_ExternalTextureParams = OpTypePointer Uniform %ExternalTextureParams -%_ptr_Function_v4float = OpTypePointer Function %v4float - %135 = OpTypeFunction %v4float -%gammaCorrection = OpFunction %v3float None %25 - %v = OpFunctionParameter %v3float - %params = OpFunctionParameter %GammaTransferParams - %29 = OpLabel - %43 = OpVariable %_ptr_Function_v3float Function %45 - %55 = OpVariable %_ptr_Function_v3float Function %45 - %61 = OpVariable %_ptr_Function_v3float Function %45 - %30 = OpExtInst %v3float %31 FAbs %v - %32 = OpCompositeExtract %float %params 4 - %33 = OpCompositeConstruct %v3float %32 %32 %32 - %34 = OpFOrdLessThan %v3bool %30 %33 - %37 = OpExtInst %v3float %31 FSign %v - %38 = OpCompositeExtract %float %params 3 - %39 = OpExtInst %v3float %31 FAbs %v - %40 = OpVectorTimesScalar %v3float %39 %38 - %41 = OpCompositeExtract %float %params 6 - %46 = OpCompositeConstruct %v3float %41 %41 %41 - %42 = OpFAdd %v3float %40 %46 - %47 = OpFMul %v3float %37 %42 - %48 = OpExtInst %v3float %31 FSign %v - %50 = OpCompositeExtract %float %params 1 - %51 = OpExtInst %v3float %31 FAbs %v - %52 = OpVectorTimesScalar %v3float %51 %50 - %53 = OpCompositeExtract %float %params 2 - %56 = OpCompositeConstruct %v3float %53 %53 %53 - %54 = OpFAdd %v3float %52 %56 - %57 = OpCompositeExtract %float %params 0 - %58 = OpCompositeConstruct %v3float %57 %57 %57 - %49 = OpExtInst %v3float %31 Pow %54 %58 - %59 = OpCompositeExtract %float %params 5 - %62 = OpCompositeConstruct %v3float %59 %59 %59 - %60 = OpFAdd %v3float %49 %62 - %63 = OpFMul %v3float %48 %60 - %64 = OpSelect %v3float %34 %47 %63 - OpReturnValue %64 - OpFunctionEnd -%textureSampleExternal = OpFunction %v4float None %65 - %plane0 = OpFunctionParameter %11 - %plane1 = OpFunctionParameter %11 - %smp = OpFunctionParameter %24 - %coord = OpFunctionParameter %v2float - %params_0 = OpFunctionParameter %ExternalTextureParams - %73 = OpLabel - %color = OpVariable %_ptr_Function_v3float Function %45 - %75 = OpCompositeExtract %uint %params_0 0 - %77 = OpIEqual %bool %75 %uint_1 - OpSelectionMerge %78 None - OpBranchConditional %77 %79 %80 - %79 = OpLabel - %83 = OpSampledImage %82 %plane0 %smp - %81 = OpImageSampleExplicitLod %v4float %83 %coord Lod %8 - %84 = OpVectorShuffle %v3float %81 %81 0 1 2 - OpStore %color %84 - OpBranch %78 - %80 = OpLabel - %86 = OpSampledImage %82 %plane0 %smp - %85 = OpImageSampleExplicitLod %v4float %86 %coord Lod %8 - %87 = OpCompositeExtract %float %85 0 - %89 = OpSampledImage %82 %plane1 %smp - %88 = OpImageSampleExplicitLod %v4float %89 %coord Lod %8 - %90 = OpVectorShuffle %v2float %88 %88 0 1 - %91 = OpCompositeExtract %float %90 0 - %92 = OpCompositeExtract %float %90 1 - %94 = OpCompositeConstruct %v4float %87 %91 %92 %float_1 - %95 = OpCompositeExtract %mat3v4float %params_0 2 - %96 = OpVectorTimesMatrix %v3float %94 %95 - OpStore %color %96 - OpBranch %78 - %78 = OpLabel - %97 = OpCompositeExtract %uint %params_0 1 - %99 = OpIEqual %bool %97 %98 - OpSelectionMerge %100 None - OpBranchConditional %99 %101 %100 - %101 = OpLabel - %103 = OpLoad %v3float %color - %104 = OpCompositeExtract %GammaTransferParams %params_0 3 - %102 = OpFunctionCall %v3float %gammaCorrection %103 %104 - OpStore %color %102 - %105 = OpCompositeExtract %mat3v3float %params_0 5 - %106 = OpLoad %v3float %color - %107 = OpMatrixTimesVector %v3float %105 %106 - OpStore %color %107 - %109 = OpLoad %v3float %color - %110 = OpCompositeExtract %GammaTransferParams %params_0 4 - %108 = OpFunctionCall %v3float %gammaCorrection %109 %110 - OpStore %color %108 - OpBranch %100 - %100 = OpLabel - %111 = OpLoad %v3float %color - %112 = OpCompositeExtract %float %111 0 - %113 = OpCompositeExtract %float %111 1 - %114 = OpCompositeExtract %float %111 2 - %115 = OpCompositeConstruct %v4float %112 %113 %114 %float_1 - OpReturnValue %115 - OpFunctionEnd -%textureSampleLevel_979816 = OpFunction %void None %116 - %119 = OpLabel - %arg_2 = OpVariable %_ptr_Function_v2float Function %123 - %res = OpVariable %_ptr_Function_v4float Function %5 - OpStore %arg_2 %120 - %125 = OpLoad %11 %arg_0 - %126 = OpLoad %11 %ext_tex_plane_1 - %127 = OpLoad %24 %arg_1 - %128 = OpLoad %v2float %arg_2 - %131 = OpAccessChain %_ptr_Uniform_ExternalTextureParams %ext_tex_params %uint_0 - %132 = OpLoad %ExternalTextureParams %131 - %124 = OpFunctionCall %v4float %textureSampleExternal %125 %126 %127 %128 %132 - OpStore %res %124 - OpReturn - OpFunctionEnd -%vertex_main_inner = OpFunction %v4float None %135 - %137 = OpLabel - %138 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturnValue %5 - OpFunctionEnd -%vertex_main = OpFunction %void None %116 - %140 = OpLabel - %141 = OpFunctionCall %v4float %vertex_main_inner - OpStore %value %141 - OpStore %vertex_point_size %float_1 - OpReturn - OpFunctionEnd -%fragment_main = OpFunction %void None %116 - %143 = OpLabel - %144 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturn - OpFunctionEnd -%compute_main = OpFunction %void None %116 - %146 = OpLabel - %147 = OpFunctionCall %void %textureSampleLevel_979816 - OpReturn - OpFunctionEnd diff --git a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.wgsl b/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.wgsl deleted file mode 100644 index ca58ef14d6..0000000000 --- a/test/tint/builtins/gen/var/textureSampleLevel/979816.wgsl.expected.wgsl +++ /dev/null @@ -1,28 +0,0 @@ -builtins/gen/var/textureSampleLevel/979816.wgsl:29:24 warning: use of deprecated builtin - var res: vec4 = textureSampleLevel(arg_0, arg_1, arg_2); - ^^^^^^^^^^^^^^^^^^ - -@group(1) @binding(0) var arg_0 : texture_external; - -@group(1) @binding(1) var arg_1 : sampler; - -fn textureSampleLevel_979816() { - var arg_2 = vec2(1.0f); - var res : vec4 = textureSampleLevel(arg_0, arg_1, arg_2); -} - -@vertex -fn vertex_main() -> @builtin(position) vec4 { - textureSampleLevel_979816(); - return vec4(); -} - -@fragment -fn fragment_main() { - textureSampleLevel_979816(); -} - -@compute @workgroup_size(1) -fn compute_main() { - textureSampleLevel_979816(); -}