intrinsics: Remove deprecated modf & frexp overloads

These have been deprecated for multiple chrome releases.

Change-Id: I4cc05a74ff8f085e6d13f93aefb93077480e52f5
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/66261
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
diff --git a/docs/origin-trial-changes.md b/docs/origin-trial-changes.md
index 5b9e504..7b21379 100644
--- a/docs/origin-trial-changes.md
+++ b/docs/origin-trial-changes.md
@@ -1,5 +1,11 @@
 # Tint changes during Origin Trial
 
+## Changes for M96
+
+### Breaking Changes
+
+* Deprecated `modf()` and `frexp()` builtin overloads that take a pointer second parameter have been removed.
+
 ## Changes for M95
 
 ### New Features
@@ -10,5 +16,5 @@
 ### Fixes
 
 * Hex floats: now correctly errors when the magnitude is non-zero, and the exponent would cause overflow. [tint:1150](https://crbug.com/tint/1150), [tint:1166](https://crbug.com/tint/1166)
-* Identifers beginning with an underscore are now correctly rejected.  [tint:1179](https://crbug.com/tint/1179)
+* Identifiers beginning with an underscore are now correctly rejected.  [tint:1179](https://crbug.com/tint/1179)
 * `abs()` fixed for unsigned integers on SPIR-V backend   [tint:1179](https://crbug.com/tint/1194)
diff --git a/src/intrinsic_table.inl b/src/intrinsic_table.inl
index b545204..2ba36e3 100644
--- a/src/intrinsic_table.inl
+++ b/src/intrinsic_table.inl
@@ -1550,7 +1550,6 @@
   OpenTypeMatcher open_type_0_{0};
   OpenNumberMatcher open_number_0_{0};
   OpenNumberMatcher open_number_1_{1};
-  OpenNumberMatcher open_number_2_{2};
   Bool Bool_;
   F32 F32_;
   I32 I32_;
@@ -1650,20 +1649,19 @@
   };
 
   /// The open-numbers, and number matchers
-  NumberMatcher const* const number[13] = {
+  NumberMatcher const* const number[12] = {
     /* [0] */ &open_number_0_,
     /* [1] */ &open_number_1_,
-    /* [2] */ &open_number_2_,
-    /* [3] */ &F32TexelFormat_,
-    /* [4] */ &I32TexelFormat_,
-    /* [5] */ &U32TexelFormat_,
-    /* [6] */ &ReadOrWrite_,
-    /* [7] */ &FunctionPrivateWorkgroup_,
-    /* [8] */ &WorkgroupOrStorage_,
-    /* [9] */ &Storage_,
-    /* [10] */ &Write_,
-    /* [11] */ &Read_,
-    /* [12] */ &ReadWrite_,
+    /* [2] */ &F32TexelFormat_,
+    /* [3] */ &I32TexelFormat_,
+    /* [4] */ &U32TexelFormat_,
+    /* [5] */ &ReadOrWrite_,
+    /* [6] */ &FunctionPrivateWorkgroup_,
+    /* [7] */ &WorkgroupOrStorage_,
+    /* [8] */ &Storage_,
+    /* [9] */ &Write_,
+    /* [10] */ &Read_,
+    /* [11] */ &ReadWrite_,
   };
 };
 
@@ -1671,195 +1669,181 @@
 Matchers::~Matchers() = default;
 
 constexpr MatcherIndex kMatcherIndices[] = {
-  /* [0] */ 28,
-  /* [1] */ 3,
+  /* [0] */ 30,
+  /* [1] */ 4,
   /* [2] */ 10,
-  /* [3] */ 1,
-  /* [4] */ 8,
+  /* [3] */ 0,
+  /* [4] */ 11,
   /* [5] */ 0,
-  /* [6] */ 3,
-  /* [7] */ 2,
-  /* [8] */ 10,
-  /* [9] */ 1,
-  /* [10] */ 8,
+  /* [6] */ 11,
+  /* [7] */ 10,
+  /* [8] */ 8,
+  /* [9] */ 12,
+  /* [10] */ 0,
   /* [11] */ 0,
-  /* [12] */ 2,
-  /* [13] */ 2,
-  /* [14] */ 10,
-  /* [15] */ 0,
-  /* [16] */ 11,
+  /* [12] */ 9,
+  /* [13] */ 1,
+  /* [14] */ 0,
+  /* [15] */ 2,
+  /* [16] */ 9,
   /* [17] */ 0,
-  /* [18] */ 12,
-  /* [19] */ 10,
+  /* [18] */ 1,
+  /* [19] */ 2,
   /* [20] */ 9,
-  /* [21] */ 12,
+  /* [21] */ 0,
   /* [22] */ 0,
-  /* [23] */ 0,
-  /* [24] */ 9,
+  /* [23] */ 2,
+  /* [24] */ 8,
   /* [25] */ 0,
-  /* [26] */ 1,
-  /* [27] */ 2,
-  /* [28] */ 9,
-  /* [29] */ 0,
-  /* [30] */ 0,
-  /* [31] */ 2,
-  /* [32] */ 10,
-  /* [33] */ 0,
-  /* [34] */ 3,
+  /* [26] */ 0,
+  /* [27] */ 8,
+  /* [28] */ 0,
+  /* [29] */ 2,
+  /* [30] */ 8,
+  /* [31] */ 0,
+  /* [32] */ 1,
+  /* [33] */ 29,
+  /* [34] */ 0,
   /* [35] */ 1,
-  /* [36] */ 9,
-  /* [37] */ 1,
-  /* [38] */ 0,
-  /* [39] */ 2,
-  /* [40] */ 10,
-  /* [41] */ 0,
-  /* [42] */ 2,
-  /* [43] */ 1,
-  /* [44] */ 29,
-  /* [45] */ 0,
-  /* [46] */ 1,
-  /* [47] */ 30,
-  /* [48] */ 0,
-  /* [49] */ 1,
-  /* [50] */ 28,
-  /* [51] */ 0,
-  /* [52] */ 1,
-  /* [53] */ 30,
-  /* [54] */ 5,
-  /* [55] */ 11,
-  /* [56] */ 27,
-  /* [57] */ 0,
-  /* [58] */ 1,
-  /* [59] */ 29,
-  /* [60] */ 5,
-  /* [61] */ 11,
-  /* [62] */ 8,
-  /* [63] */ 0,
-  /* [64] */ 0,
-  /* [65] */ 28,
-  /* [66] */ 5,
-  /* [67] */ 11,
-  /* [68] */ 8,
-  /* [69] */ 0,
-  /* [70] */ 1,
-  /* [71] */ 27,
-  /* [72] */ 5,
-  /* [73] */ 11,
-  /* [74] */ 30,
-  /* [75] */ 4,
-  /* [76] */ 11,
-  /* [77] */ 29,
-  /* [78] */ 4,
-  /* [79] */ 11,
-  /* [80] */ 28,
-  /* [81] */ 4,
-  /* [82] */ 11,
-  /* [83] */ 27,
-  /* [84] */ 4,
-  /* [85] */ 11,
-  /* [86] */ 30,
-  /* [87] */ 3,
-  /* [88] */ 11,
-  /* [89] */ 29,
-  /* [90] */ 3,
-  /* [91] */ 11,
-  /* [92] */ 28,
-  /* [93] */ 3,
-  /* [94] */ 11,
-  /* [95] */ 27,
-  /* [96] */ 3,
-  /* [97] */ 11,
-  /* [98] */ 30,
-  /* [99] */ 5,
-  /* [100] */ 10,
-  /* [101] */ 29,
-  /* [102] */ 5,
-  /* [103] */ 10,
-  /* [104] */ 28,
-  /* [105] */ 5,
-  /* [106] */ 10,
-  /* [107] */ 27,
-  /* [108] */ 5,
-  /* [109] */ 10,
-  /* [110] */ 30,
-  /* [111] */ 4,
-  /* [112] */ 10,
-  /* [113] */ 29,
-  /* [114] */ 4,
-  /* [115] */ 10,
-  /* [116] */ 28,
-  /* [117] */ 4,
-  /* [118] */ 10,
-  /* [119] */ 27,
-  /* [120] */ 4,
-  /* [121] */ 10,
-  /* [122] */ 30,
-  /* [123] */ 3,
-  /* [124] */ 10,
-  /* [125] */ 29,
-  /* [126] */ 3,
-  /* [127] */ 10,
-  /* [128] */ 27,
-  /* [129] */ 3,
-  /* [130] */ 10,
+  /* [36] */ 30,
+  /* [37] */ 0,
+  /* [38] */ 1,
+  /* [39] */ 28,
+  /* [40] */ 0,
+  /* [41] */ 1,
+  /* [42] */ 27,
+  /* [43] */ 0,
+  /* [44] */ 1,
+  /* [45] */ 29,
+  /* [46] */ 4,
+  /* [47] */ 10,
+  /* [48] */ 28,
+  /* [49] */ 4,
+  /* [50] */ 10,
+  /* [51] */ 27,
+  /* [52] */ 4,
+  /* [53] */ 10,
+  /* [54] */ 30,
+  /* [55] */ 3,
+  /* [56] */ 10,
+  /* [57] */ 29,
+  /* [58] */ 3,
+  /* [59] */ 10,
+  /* [60] */ 28,
+  /* [61] */ 3,
+  /* [62] */ 10,
+  /* [63] */ 27,
+  /* [64] */ 3,
+  /* [65] */ 10,
+  /* [66] */ 30,
+  /* [67] */ 2,
+  /* [68] */ 10,
+  /* [69] */ 29,
+  /* [70] */ 2,
+  /* [71] */ 10,
+  /* [72] */ 28,
+  /* [73] */ 2,
+  /* [74] */ 10,
+  /* [75] */ 27,
+  /* [76] */ 2,
+  /* [77] */ 10,
+  /* [78] */ 30,
+  /* [79] */ 4,
+  /* [80] */ 9,
+  /* [81] */ 29,
+  /* [82] */ 4,
+  /* [83] */ 9,
+  /* [84] */ 28,
+  /* [85] */ 4,
+  /* [86] */ 9,
+  /* [87] */ 27,
+  /* [88] */ 2,
+  /* [89] */ 9,
+  /* [90] */ 27,
+  /* [91] */ 4,
+  /* [92] */ 9,
+  /* [93] */ 28,
+  /* [94] */ 2,
+  /* [95] */ 9,
+  /* [96] */ 8,
+  /* [97] */ 0,
+  /* [98] */ 3,
+  /* [99] */ 30,
+  /* [100] */ 3,
+  /* [101] */ 9,
+  /* [102] */ 29,
+  /* [103] */ 3,
+  /* [104] */ 9,
+  /* [105] */ 28,
+  /* [106] */ 3,
+  /* [107] */ 9,
+  /* [108] */ 27,
+  /* [109] */ 3,
+  /* [110] */ 9,
+  /* [111] */ 29,
+  /* [112] */ 2,
+  /* [113] */ 9,
+  /* [114] */ 30,
+  /* [115] */ 2,
+  /* [116] */ 9,
+  /* [117] */ 7,
+  /* [118] */ 3,
+  /* [119] */ 7,
+  /* [120] */ 2,
+  /* [121] */ 5,
+  /* [122] */ 3,
+  /* [123] */ 6,
+  /* [124] */ 3,
+  /* [125] */ 7,
+  /* [126] */ 4,
+  /* [127] */ 33,
+  /* [128] */ 0,
+  /* [129] */ 5,
+  /* [130] */ 2,
   /* [131] */ 6,
   /* [132] */ 2,
-  /* [133] */ 5,
-  /* [134] */ 3,
+  /* [133] */ 15,
+  /* [134] */ 0,
   /* [135] */ 7,
-  /* [136] */ 2,
-  /* [137] */ 6,
-  /* [138] */ 3,
-  /* [139] */ 7,
-  /* [140] */ 3,
-  /* [141] */ 5,
+  /* [136] */ 0,
+  /* [137] */ 16,
+  /* [138] */ 0,
+  /* [139] */ 17,
+  /* [140] */ 0,
+  /* [141] */ 20,
   /* [142] */ 2,
-  /* [143] */ 7,
-  /* [144] */ 4,
-  /* [145] */ 33,
-  /* [146] */ 0,
-  /* [147] */ 20,
-  /* [148] */ 2,
-  /* [149] */ 15,
+  /* [143] */ 35,
+  /* [144] */ 0,
+  /* [145] */ 19,
+  /* [146] */ 2,
+  /* [147] */ 18,
+  /* [148] */ 0,
+  /* [149] */ 21,
   /* [150] */ 0,
-  /* [151] */ 7,
-  /* [152] */ 0,
-  /* [153] */ 16,
-  /* [154] */ 0,
-  /* [155] */ 35,
-  /* [156] */ 0,
+  /* [151] */ 18,
+  /* [152] */ 2,
+  /* [153] */ 17,
+  /* [154] */ 2,
+  /* [155] */ 16,
+  /* [156] */ 2,
   /* [157] */ 19,
-  /* [158] */ 2,
-  /* [159] */ 17,
+  /* [158] */ 0,
+  /* [159] */ 20,
   /* [160] */ 0,
-  /* [161] */ 18,
-  /* [162] */ 0,
-  /* [163] */ 18,
-  /* [164] */ 2,
-  /* [165] */ 21,
-  /* [166] */ 0,
-  /* [167] */ 17,
-  /* [168] */ 2,
-  /* [169] */ 16,
-  /* [170] */ 2,
-  /* [171] */ 19,
-  /* [172] */ 0,
-  /* [173] */ 20,
-  /* [174] */ 0,
-  /* [175] */ 15,
-  /* [176] */ 2,
-  /* [177] */ 5,
-  /* [178] */ 0,
-  /* [179] */ 13,
-  /* [180] */ 25,
-  /* [181] */ 24,
-  /* [182] */ 23,
-  /* [183] */ 22,
-  /* [184] */ 14,
-  /* [185] */ 26,
-  /* [186] */ 31,
-  /* [187] */ 32,
-  /* [188] */ 34,
+  /* [161] */ 15,
+  /* [162] */ 2,
+  /* [163] */ 5,
+  /* [164] */ 0,
+  /* [165] */ 13,
+  /* [166] */ 25,
+  /* [167] */ 24,
+  /* [168] */ 23,
+  /* [169] */ 22,
+  /* [170] */ 14,
+  /* [171] */ 26,
+  /* [172] */ 31,
+  /* [173] */ 32,
+  /* [174] */ 34,
 };
 
 // Assert that the MatcherIndex is big enough to index all the matchers, plus
@@ -1872,227 +1856,227 @@
   {
     /* [0] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [1] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [2] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [3] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [4] */
     /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [5] */
     /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [6] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [7] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [8] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [9] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [10] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [11] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [12] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [13] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [14] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [15] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [16] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [17] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [18] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [19] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [20] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [21] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [22] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [23] */
     /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [24] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [25] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [26] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [27] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [28] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [29] */
-    /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [30] */
-    /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [31] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [32] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [33] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [34] */
     /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [35] */
     /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [36] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [37] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [38] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [39] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [40] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [41] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [42] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [43] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[147],
+    /* matcher indices */ &kMatcherIndices[141],
   },
   {
     /* [44] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [45] */
@@ -2102,7 +2086,7 @@
   {
     /* [46] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [47] */
@@ -2117,397 +2101,397 @@
   {
     /* [49] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [50] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [51] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [52] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [53] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDdx,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [54] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kDdy,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [55] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [56] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [57] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [58] */
     /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [59] */
     /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [60] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [61] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [62] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [63] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [64] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [65] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [66] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [67] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [68] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [69] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [70] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [71] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [72] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [73] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [74] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [75] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [76] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [77] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [78] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [79] */
     /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [80] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [81] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [82] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [83] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [84] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [85] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [86] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[141],
   },
   {
     /* [87] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [88] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [89] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [90] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [91] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[141],
   },
   {
     /* [92] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [93] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [94] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [95] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [96] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[145],
   },
   {
     /* [97] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [98] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [99] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kDdx,
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [100] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kDdy,
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [101] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[147],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [102] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [103] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [104] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [105] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [106] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [107] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [108] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [109] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [110] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [111] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [112] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [113] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [114] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [115] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [116] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [117] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [118] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [119] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [120] */
     /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [121] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [122] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [123] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [124] */
     /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [125] */
     /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [126] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[147],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [127] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [128] */
@@ -2517,97 +2501,97 @@
   {
     /* [129] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [130] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [131] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [132] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [133] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [134] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [135] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [136] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [137] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [138] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [139] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [140] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [141] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [142] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [143] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [144] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [145] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [146] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[157],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [147] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [148] */
@@ -2616,48 +2600,48 @@
   },
   {
     /* [149] */
-    /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [150] */
-    /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [151] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [152] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [153] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [154] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDdx,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [155] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kDdy,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [156] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [157] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [158] */
@@ -2666,253 +2650,253 @@
   },
   {
     /* [159] */
-    /* usage */ ParameterUsage::kDdx,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [160] */
-    /* usage */ ParameterUsage::kDdy,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [161] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [162] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [163] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [164] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [165] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [166] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [167] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [168] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [169] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [170] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [171] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[113],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [172] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [173] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [174] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[139],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [175] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[167],
   },
   {
     /* [176] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [177] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [178] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [179] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[159],
+    /* matcher indices */ &kMatcherIndices[167],
   },
   {
     /* [180] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [181] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [182] */
     /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [183] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [184] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [185] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [186] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [187] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[139],
   },
   {
     /* [188] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [189] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [190] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [191] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[145],
   },
   {
     /* [192] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [193] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [194] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [195] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[101],
+    /* matcher indices */ &kMatcherIndices[81],
   },
   {
     /* [196] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [197] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [198] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[143],
+    /* matcher indices */ &kMatcherIndices[125],
   },
   {
     /* [199] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[167],
   },
   {
     /* [200] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [201] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [202] */
     /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [203] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [204] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [205] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [206] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [207] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [208] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [209] */
@@ -2921,78 +2905,78 @@
   },
   {
     /* [210] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [211] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[102],
   },
   {
     /* [212] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [213] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [214] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[117],
   },
   {
     /* [215] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [216] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[170],
   },
   {
     /* [217] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [218] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kDepthRef,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [219] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [220] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [221] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [222] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kBias,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [223] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [224] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [225] */
@@ -3001,18 +2985,18 @@
   },
   {
     /* [226] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [227] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[157],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [228] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [229] */
@@ -3021,18 +3005,18 @@
   },
   {
     /* [230] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [231] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* matcher indices */ &kMatcherIndices[145],
   },
   {
     /* [232] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [233] */
@@ -3041,158 +3025,158 @@
   },
   {
     /* [234] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [235] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[167],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [236] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [237] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [238] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [239] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[125],
+    /* matcher indices */ &kMatcherIndices[111],
   },
   {
     /* [240] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [241] */
     /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [242] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [243] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [244] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [245] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [246] */
     /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [247] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* matcher indices */ &kMatcherIndices[141],
   },
   {
     /* [248] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [249] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [250] */
-    /* usage */ ParameterUsage::kOffset,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [251] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* matcher indices */ &kMatcherIndices[153],
   },
   {
     /* [252] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[184],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [253] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [254] */
-    /* usage */ ParameterUsage::kDepthRef,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [255] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [256] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [257] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [258] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [259] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[157],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [260] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [261] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [262] */
-    /* usage */ ParameterUsage::kBias,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [263] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[147],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [264] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [265] */
@@ -3201,363 +3185,363 @@
   },
   {
     /* [266] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kOffset,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [267] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [268] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [269] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [270] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[87],
   },
   {
     /* [271] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [272] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[3],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [273] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[93],
   },
   {
     /* [274] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [275] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [276] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [277] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [278] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[68],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [279] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[0],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [280] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [281] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [282] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[114],
   },
   {
     /* [283] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [284] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [285] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[122],
+    /* matcher indices */ &kMatcherIndices[108],
   },
   {
     /* [286] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [287] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* matcher indices */ &kMatcherIndices[117],
   },
   {
     /* [288] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[119],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [289] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [290] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[139],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [291] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[105],
   },
   {
     /* [292] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [293] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[117],
   },
   {
     /* [294] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[116],
+    /* matcher indices */ &kMatcherIndices[99],
   },
   {
     /* [295] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [296] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[139],
+    /* matcher indices */ &kMatcherIndices[117],
   },
   {
     /* [297] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[110],
+    /* matcher indices */ &kMatcherIndices[90],
   },
   {
     /* [298] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [299] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[139],
+    /* matcher indices */ &kMatcherIndices[125],
   },
   {
     /* [300] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[104],
+    /* matcher indices */ &kMatcherIndices[78],
   },
   {
     /* [301] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [302] */
     /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[143],
+    /* matcher indices */ &kMatcherIndices[125],
   },
   {
     /* [303] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[98],
+    /* matcher indices */ &kMatcherIndices[133],
   },
   {
     /* [304] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [305] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[143],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [306] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[153],
+    /* matcher indices */ &kMatcherIndices[137],
   },
   {
     /* [307] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [308] */
     /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [309] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[161],
+    /* matcher indices */ &kMatcherIndices[84],
   },
   {
     /* [310] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [311] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kValue,
+    /* matcher indices */ &kMatcherIndices[125],
   },
   {
     /* [312] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[165],
+    /* matcher indices */ &kMatcherIndices[161],
   },
   {
     /* [313] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [314] */
-    /* usage */ ParameterUsage::kSampleIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [315] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[147],
   },
   {
     /* [316] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [317] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[3],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [318] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[149],
   },
   {
     /* [319] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [320] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kSampleIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [321] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[128],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [322] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [323] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [324] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[185],
+    /* matcher indices */ &kMatcherIndices[171],
   },
   {
     /* [325] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [326] */
     /* usage */ ParameterUsage::kSampleIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [327] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [328] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [329] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [330] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[155],
   },
   {
     /* [331] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [332] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [333] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[89],
+    /* matcher indices */ &kMatcherIndices[151],
   },
   {
     /* [334] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [335] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [336] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* matcher indices */ &kMatcherIndices[145],
   },
   {
     /* [337] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [338] */
@@ -3567,782 +3551,782 @@
   {
     /* [339] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[77],
+    /* matcher indices */ &kMatcherIndices[167],
   },
   {
     /* [340] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kSampler,
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [341] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [342] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[45],
   },
   {
     /* [343] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [344] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [345] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [346] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [347] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [348] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [349] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [350] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [351] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [352] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [353] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [354] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[2],
   },
   {
     /* [355] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [356] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [357] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [358] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [359] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [360] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [361] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [362] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [363] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[59],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [364] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [365] */
-    /* usage */ ParameterUsage::kArrayIndex,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [366] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[163],
+    /* matcher indices */ &kMatcherIndices[57],
   },
   {
     /* [367] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [368] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [369] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[169],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [370] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [371] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[30],
   },
   {
     /* [372] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[175],
+    /* matcher indices */ &kMatcherIndices[69],
   },
   {
     /* [373] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [374] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kArrayIndex,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [375] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[107],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [376] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [377] */
-    /* usage */ ParameterUsage::kValue,
-    /* matcher indices */ &kMatcherIndices[143],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[13],
   },
   {
     /* [378] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[186],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [379] */
-    /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [380] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[13],
   },
   {
     /* [381] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[149],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [382] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [383] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [384] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[157],
+    /* matcher indices */ &kMatcherIndices[172],
   },
   {
     /* [385] */
     /* usage */ ParameterUsage::kSampler,
-    /* matcher indices */ &kMatcherIndices[179],
+    /* matcher indices */ &kMatcherIndices[165],
   },
   {
     /* [386] */
     /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[131],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [387] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[72],
   },
   {
     /* [388] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[4],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [389] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[63],
   },
   {
     /* [390] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [391] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[60],
   },
   {
     /* [392] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [393] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [394] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [395] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [396] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[40],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [397] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [398] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [399] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[66],
   },
   {
     /* [400] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[123],
   },
   {
     /* [401] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [402] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[131],
   },
   {
     /* [403] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [404] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[96],
   },
   {
     /* [405] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[51],
   },
   {
     /* [406] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[55],
   },
   {
     /* [407] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[48],
   },
   {
     /* [408] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[2],
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
   },
   {
     /* [409] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [410] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[32],
-  },
-  {
-    /* [411] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
-  },
-  {
-    /* [412] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [413] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[173],
-  },
-  {
-    /* [414] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [415] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[95],
-  },
-  {
-    /* [416] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [417] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [418] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [419] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [420] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [421] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [422] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [423] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[92],
-  },
-  {
-    /* [424] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
-  },
-  {
-    /* [425] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[131],
-  },
-  {
-    /* [426] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[131],
-  },
-  {
-    /* [427] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[86],
-  },
-  {
-    /* [428] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
-  },
-  {
-    /* [429] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[83],
-  },
-  {
-    /* [430] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [431] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [432] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [433] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [434] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [435] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [436] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [437] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[80],
-  },
-  {
-    /* [438] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
-  },
-  {
-    /* [439] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[74],
-  },
-  {
-    /* [440] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
-  },
-  {
-    /* [441] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[71],
-  },
-  {
-    /* [442] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [443] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[65],
-  },
-  {
-    /* [444] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
-  },
-  {
-    /* [445] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [446] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [447] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [448] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [449] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[53],
-  },
-  {
-    /* [450] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[137],
-  },
-  {
-    /* [451] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[186],
-  },
-  {
-    /* [452] */
-    /* usage */ ParameterUsage::kCoords,
-    /* matcher indices */ &kMatcherIndices[133],
-  },
-  {
-    /* [453] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [454] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [455] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [456] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [457] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [458] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [459] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [460] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [461] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [462] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [463] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [464] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [465] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[149],
-  },
-  {
-    /* [466] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [467] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [468] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [469] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[153],
-  },
-  {
-    /* [470] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [471] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
-  },
-  {
-    /* [472] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [473] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [474] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[8],
-  },
-  {
-    /* [475] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [476] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
-  },
-  {
-    /* [477] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[161],
-  },
-  {
-    /* [478] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [479] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
-  },
-  {
-    /* [480] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [481] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[171],
-  },
-  {
-    /* [482] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [483] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
-  },
-  {
-    /* [484] */
-    /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
-  },
-  {
-    /* [485] */
     /* usage */ ParameterUsage::kTexture,
     /* matcher indices */ &kMatcherIndices[159],
   },
   {
-    /* [486] */
+    /* [410] */
     /* usage */ ParameterUsage::kLevel,
-    /* matcher indices */ &kMatcherIndices[1],
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [411] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [412] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [413] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [414] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [415] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [416] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [417] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [418] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [419] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
+  },
+  {
+    /* [420] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
+  },
+  {
+    /* [421] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[0],
+  },
+  {
+    /* [422] */
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[123],
+  },
+  {
+    /* [423] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [424] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [425] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [426] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [427] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [428] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [429] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [430] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [431] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[172],
+  },
+  {
+    /* [432] */
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[121],
+  },
+  {
+    /* [433] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [434] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [435] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [436] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [437] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[54],
+  },
+  {
+    /* [438] */
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[123],
+  },
+  {
+    /* [439] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [440] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [441] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
+  },
+  {
+    /* [442] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[24],
+  },
+  {
+    /* [443] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [444] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [445] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [446] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [447] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [448] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [449] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [450] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [451] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [452] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [453] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[2],
+  },
+  {
+    /* [454] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[3],
+  },
+  {
+    /* [455] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [456] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
+  },
+  {
+    /* [457] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[75],
+  },
+  {
+    /* [458] */
+    /* usage */ ParameterUsage::kCoords,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [459] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[169],
+  },
+  {
+    /* [460] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [461] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[137],
+  },
+  {
+    /* [462] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [463] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[166],
+  },
+  {
+    /* [464] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [465] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[139],
+  },
+  {
+    /* [466] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [467] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[167],
+  },
+  {
+    /* [468] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [469] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[147],
+  },
+  {
+    /* [470] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [471] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
+  },
+  {
+    /* [472] */
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [473] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[157],
+  },
+  {
+    /* [474] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [475] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[168],
+  },
+  {
+    /* [476] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [477] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[133],
+  },
+  {
+    /* [478] */
+    /* usage */ ParameterUsage::kLevel,
+    /* matcher indices */ &kMatcherIndices[55],
+  },
+  {
+    /* [479] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[157],
+  },
+  {
+    /* [480] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[169],
+  },
+  {
+    /* [481] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[149],
+  },
+  {
+    /* [482] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[168],
+  },
+  {
+    /* [483] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[159],
+  },
+  {
+    /* [484] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[167],
+  },
+  {
+    /* [485] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[147],
+  },
+  {
+    /* [486] */
+    /* usage */ ParameterUsage::kTexture,
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [487] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[161],
+    /* matcher indices */ &kMatcherIndices[139],
   },
   {
     /* [488] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* matcher indices */ &kMatcherIndices[171],
   },
   {
     /* [489] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[165],
+    /* matcher indices */ &kMatcherIndices[42],
   },
   {
     /* [490] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[39],
   },
   {
     /* [491] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[173],
+    /* matcher indices */ &kMatcherIndices[33],
   },
   {
     /* [492] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* matcher indices */ &kMatcherIndices[36],
   },
   {
     /* [493] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[171],
+    /* matcher indices */ &kMatcherIndices[172],
   },
   {
     /* [494] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[139],
   },
   {
     /* [495] */
@@ -4352,542 +4336,542 @@
   {
     /* [496] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[185],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [497] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[56],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [498] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[50],
+    /* matcher indices */ &kMatcherIndices[33],
   },
   {
     /* [499] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[44],
+    /* matcher indices */ &kMatcherIndices[133],
   },
   {
     /* [500] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[47],
+    /* matcher indices */ &kMatcherIndices[137],
   },
   {
     /* [501] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[186],
+    /* matcher indices */ &kMatcherIndices[139],
   },
   {
     /* [502] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[159],
+    /* matcher indices */ &kMatcherIndices[147],
   },
   {
     /* [503] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[173],
+    /* matcher indices */ &kMatcherIndices[157],
   },
   {
     /* [504] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* matcher indices */ &kMatcherIndices[159],
   },
   {
     /* [505] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* matcher indices */ &kMatcherIndices[169],
   },
   {
     /* [506] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[44],
+    /* matcher indices */ &kMatcherIndices[168],
   },
   {
     /* [507] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[149],
+    /* matcher indices */ &kMatcherIndices[167],
   },
   {
     /* [508] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[153],
+    /* matcher indices */ &kMatcherIndices[166],
   },
   {
     /* [509] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[159],
+    /* matcher indices */ &kMatcherIndices[149],
   },
   {
     /* [510] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[161],
+    /* matcher indices */ &kMatcherIndices[171],
   },
   {
     /* [511] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[171],
+    /* matcher indices */ &kMatcherIndices[137],
   },
   {
     /* [512] */
     /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[173],
+    /* matcher indices */ &kMatcherIndices[133],
   },
   {
     /* [513] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[183],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[1],
   },
   {
     /* [514] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[182],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[1],
   },
   {
     /* [515] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[181],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[1],
   },
   {
     /* [516] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[180],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[1],
   },
   {
     /* [517] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[165],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[1],
   },
   {
     /* [518] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[185],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [519] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[153],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [520] */
-    /* usage */ ParameterUsage::kTexture,
-    /* matcher indices */ &kMatcherIndices[149],
+    /* usage */ ParameterUsage::kNone,
+    /* matcher indices */ &kMatcherIndices[16],
   },
   {
     /* [521] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[75],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [522] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[75],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [523] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[75],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [524] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[75],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [525] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[75],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [526] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [527] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [528] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[24],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [529] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [530] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [531] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [532] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [533] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [534] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [535] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [536] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [537] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [538] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[119],
   },
   {
     /* [539] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [540] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [541] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[129],
   },
   {
     /* [542] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [543] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [544] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [545] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [546] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[135],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [547] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [548] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [549] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[141],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [550] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [551] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [552] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [553] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [554] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [555] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [556] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [557] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [558] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [559] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [560] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [561] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [562] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [563] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [564] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [565] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [566] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [567] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [568] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [569] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [570] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [571] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [572] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [573] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [574] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [575] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [576] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [577] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [578] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [579] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [580] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [581] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [582] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [583] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [584] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [585] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [586] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [587] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [588] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [589] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [590] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[20],
   },
   {
     /* [591] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [592] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[3],
   },
   {
     /* [593] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [594] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [595] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [596] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [597] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [598] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[28],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [599] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [600] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [601] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [602] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[2],
   },
   {
     /* [603] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [604] */
@@ -4897,72 +4881,32 @@
   {
     /* [605] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[30],
   },
   {
     /* [606] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[30],
   },
   {
     /* [607] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[27],
   },
   {
     /* [608] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
+    /* matcher indices */ &kMatcherIndices[15],
   },
   {
     /* [609] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
+    /* matcher indices */ &kMatcherIndices[24],
   },
   {
     /* [610] */
     /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[14],
-  },
-  {
-    /* [611] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [612] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[19],
-  },
-  {
-    /* [613] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[68],
-  },
-  {
-    /* [614] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[68],
-  },
-  {
-    /* [615] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[10],
-  },
-  {
-    /* [616] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[7],
-  },
-  {
-    /* [617] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[62],
-  },
-  {
-    /* [618] */
-    /* usage */ ParameterUsage::kNone,
-    /* matcher indices */ &kMatcherIndices[5],
+    /* matcher indices */ &kMatcherIndices[3],
   },
 };
 
@@ -4992,38 +4936,33 @@
 constexpr OpenNumberInfo kOpenNumbers[] = {
   {
     /* [0] */
-    /* name */ "M",
-    /* matcher index */ kNoMatcher,
-  },
-  {
-    /* [1] */
-    /* name */ "N",
-    /* matcher index */ kNoMatcher,
-  },
-  {
-    /* [2] */
-    /* name */ "S",
-    /* matcher index */ 7,
-  },
-  {
-    /* [3] */
-    /* name */ "A",
-    /* matcher index */ kNoMatcher,
-  },
-  {
-    /* [4] */
     /* name */ "F",
     /* matcher index */ kNoMatcher,
   },
   {
-    /* [5] */
+    /* [1] */
     /* name */ "A",
-    /* matcher index */ 6,
+    /* matcher index */ 5,
   },
   {
-    /* [6] */
+    /* [2] */
+    /* name */ "M",
+    /* matcher index */ kNoMatcher,
+  },
+  {
+    /* [3] */
+    /* name */ "N",
+    /* matcher index */ kNoMatcher,
+  },
+  {
+    /* [4] */
     /* name */ "S",
-    /* matcher index */ 8,
+    /* matcher index */ 7,
+  },
+  {
+    /* [5] */
+    /* name */ "A",
+    /* matcher index */ kNoMatcher,
   },
 };
 
@@ -5034,9 +4973,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[520],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[512],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5046,9 +4985,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[465],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[477],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5058,9 +4997,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[519],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[511],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5070,9 +5009,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[469],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[461],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5082,9 +5021,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[495],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[487],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5094,9 +5033,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[485],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[465],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5106,9 +5045,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[487],
-    /* return matcher indices */ &kMatcherIndices[137],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[485],
+    /* return matcher indices */ &kMatcherIndices[123],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5118,9 +5057,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[477],
-    /* return matcher indices */ &kMatcherIndices[137],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[469],
+    /* return matcher indices */ &kMatcherIndices[123],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5130,9 +5069,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[493],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[479],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5142,9 +5081,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[481],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[473],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5154,9 +5093,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[491],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[483],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5166,9 +5105,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[413],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[409],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5178,9 +5117,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[489],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[481],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5190,9 +5129,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[488],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[480],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5202,9 +5141,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[411],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[459],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5214,9 +5153,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[490],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[482],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5226,9 +5165,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[483],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[475],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5238,9 +5177,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[492],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[484],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5250,9 +5189,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[479],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[467],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5262,9 +5201,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[494],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[486],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5274,9 +5213,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[471],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[463],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5286,9 +5225,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[496],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[488],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5298,9 +5237,9 @@
     /* num open types */ 0,
     /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[4],
-    /* parameters */ &kParameters[497],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[0],
+    /* parameters */ &kParameters[489],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5310,9 +5249,9 @@
     /* num open types */ 0,
     /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[4],
-    /* parameters */ &kParameters[498],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[0],
+    /* parameters */ &kParameters[490],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5322,9 +5261,9 @@
     /* num open types */ 0,
     /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[4],
-    /* parameters */ &kParameters[499],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[0],
+    /* parameters */ &kParameters[491],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5334,9 +5273,9 @@
     /* num open types */ 0,
     /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[4],
-    /* parameters */ &kParameters[500],
-    /* return matcher indices */ &kMatcherIndices[137],
+    /* open numbers */ &kOpenNumbers[0],
+    /* parameters */ &kParameters[492],
+    /* return matcher indices */ &kMatcherIndices[123],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5346,9 +5285,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[501],
-    /* return matcher indices */ &kMatcherIndices[133],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[493],
+    /* return matcher indices */ &kMatcherIndices[121],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5358,9 +5297,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[381],
-    /* return matcher indices */ &kMatcherIndices[151],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[303],
+    /* return matcher indices */ &kMatcherIndices[135],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5370,9 +5309,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[306],
-    /* return matcher indices */ &kMatcherIndices[151],
+    /* return matcher indices */ &kMatcherIndices[135],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5382,9 +5321,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[179],
-    /* return matcher indices */ &kMatcherIndices[151],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[187],
+    /* return matcher indices */ &kMatcherIndices[135],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5394,9 +5333,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[309],
-    /* return matcher indices */ &kMatcherIndices[151],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[315],
+    /* return matcher indices */ &kMatcherIndices[135],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5406,9 +5345,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[312],
-    /* return matcher indices */ &kMatcherIndices[151],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[318],
+    /* return matcher indices */ &kMatcherIndices[135],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5418,9 +5357,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[267],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[321],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5430,9 +5369,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[255],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[259],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5442,9 +5381,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[324],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5454,9 +5393,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[415],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[457],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5466,9 +5405,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[423],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[387],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5478,9 +5417,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[333],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[372],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5490,9 +5429,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[427],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[399],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5502,9 +5441,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[429],
-    /* return matcher indices */ &kMatcherIndices[139],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[389],
+    /* return matcher indices */ &kMatcherIndices[117],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5514,9 +5453,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[437],
-    /* return matcher indices */ &kMatcherIndices[139],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[391],
+    /* return matcher indices */ &kMatcherIndices[117],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5526,9 +5465,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[339],
-    /* return matcher indices */ &kMatcherIndices[139],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[366],
+    /* return matcher indices */ &kMatcherIndices[117],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5538,9 +5477,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[439],
-    /* return matcher indices */ &kMatcherIndices[139],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[437],
+    /* return matcher indices */ &kMatcherIndices[117],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5550,9 +5489,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[441],
-    /* return matcher indices */ &kMatcherIndices[143],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[405],
+    /* return matcher indices */ &kMatcherIndices[125],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5562,9 +5501,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[443],
-    /* return matcher indices */ &kMatcherIndices[143],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[407],
+    /* return matcher indices */ &kMatcherIndices[125],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5574,9 +5513,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[363],
-    /* return matcher indices */ &kMatcherIndices[143],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[342],
+    /* return matcher indices */ &kMatcherIndices[125],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5586,9 +5525,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[449],
-    /* return matcher indices */ &kMatcherIndices[143],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[421],
+    /* return matcher indices */ &kMatcherIndices[125],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ true,
   },
@@ -5598,9 +5537,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[451],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[431],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5610,9 +5549,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[191],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[203],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5622,9 +5561,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[91],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[76],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5634,9 +5573,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[166],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[71],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5646,9 +5585,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[49],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[7],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5658,9 +5597,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[219],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[223],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5670,9 +5609,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[76],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[156],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5682,9 +5621,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[227],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[231],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5694,9 +5633,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[126],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[86],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5706,9 +5645,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[243],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5718,9 +5657,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[131],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[101],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5730,9 +5669,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[111],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[131],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5742,9 +5681,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[13],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[37],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5754,9 +5693,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[207],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[179],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5766,9 +5705,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[161],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[141],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5778,9 +5717,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[378],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[384],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -5790,9 +5729,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[372],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[312],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5802,9 +5741,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[369],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[330],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5814,9 +5753,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[247],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[255],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5826,9 +5765,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[235],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[251],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5838,9 +5777,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[116],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5850,9 +5789,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[366],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[333],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5862,9 +5801,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[223],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[263],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5874,9 +5813,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[384],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[336],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5886,9 +5825,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[263],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[247],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5898,9 +5837,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[348],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[327],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5910,9 +5849,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[215],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[171],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5922,9 +5861,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[203],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[235],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5934,9 +5873,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[96],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[106],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5946,9 +5885,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[336],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[339],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5958,9 +5897,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[187],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[227],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -5970,8 +5909,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[321],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[270],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -5982,8 +5921,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[279],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[273],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -5994,7 +5933,7 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[239],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
@@ -6006,8 +5945,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[285],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[282],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6018,8 +5957,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[288],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[285],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6030,8 +5969,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[294],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[291],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6042,8 +5981,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[171],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[211],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6054,8 +5993,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[297],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[294],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6066,8 +6005,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[375],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[297],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6078,8 +6017,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[300],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[309],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6090,7 +6029,7 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
+    /* open numbers */ &kOpenNumbers[6],
     /* parameters */ &kParameters[195],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
@@ -6102,8 +6041,8 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[303],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[300],
     /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
@@ -6114,9 +6053,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[507],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[499],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6126,9 +6065,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[508],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[500],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6138,9 +6077,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[509],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[501],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6150,9 +6089,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[510],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[502],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6162,9 +6101,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[511],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[503],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6174,9 +6113,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[512],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[504],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6186,9 +6125,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[513],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[505],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6198,9 +6137,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[514],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[506],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6210,9 +6149,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[515],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[507],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6222,202 +6161,202 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[516],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[508],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [100] */
-    /* num parameters */ 5,
+    /* num parameters */ 4,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[121],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[219],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [101] */
-    /* num parameters */ 6,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[31],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[66],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [102] */
-    /* num parameters */ 6,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[25],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[161],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [103] */
-    /* num parameters */ 7,
+    /* num parameters */ 6,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[0],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[25],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [104] */
-    /* num parameters */ 5,
+    /* num parameters */ 4,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[156],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[207],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [105] */
-    /* num parameters */ 6,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[55],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[81],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [106] */
-    /* num parameters */ 5,
+    /* num parameters */ 4,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[146],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[191],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [107] */
-    /* num parameters */ 6,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[43],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[91],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [108] */
-    /* num parameters */ 4,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[175],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[151],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [109] */
-    /* num parameters */ 5,
-    /* num open types */ 0,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[136],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [110] */
-    /* num parameters */ 5,
-    /* num open types */ 0,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[141],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [111] */
     /* num parameters */ 6,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[37],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[55],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [110] */
+    /* num parameters */ 6,
+    /* num open types */ 0,
+    /* num open numbers */ 0,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[49],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [111] */
+    /* num parameters */ 7,
+    /* num open types */ 0,
+    /* num open numbers */ 0,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[0],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [112] */
-    /* num parameters */ 4,
+    /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[183],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[121],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [113] */
-    /* num parameters */ 5,
+    /* num parameters */ 6,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[61],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[31],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [114] */
-    /* num parameters */ 4,
-    /* num open types */ 0,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[259],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [115] */
     /* num parameters */ 5,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[101],
-    /* return matcher indices */ &kMatcherIndices[135],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[96],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [115] */
+    /* num parameters */ 6,
+    /* num open types */ 0,
+    /* num open numbers */ 0,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[43],
+    /* return matcher indices */ &kMatcherIndices[119],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -6426,9 +6365,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[211],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[215],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6438,9 +6377,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[151],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[166],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6450,9 +6389,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[81],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[136],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6462,9 +6401,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[19],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[13],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6474,9 +6413,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[231],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[199],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6486,9 +6425,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[106],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[146],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6498,9 +6437,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[199],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[183],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6510,9 +6449,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[86],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[61],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6522,9 +6461,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[71],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[111],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6534,9 +6473,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[7],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[19],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6546,9 +6485,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[251],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[175],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6558,9 +6497,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[66],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[126],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6570,9 +6509,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[502],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[494],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6582,9 +6521,9 @@
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[503],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[495],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6594,9 +6533,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[504],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[496],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6606,9 +6545,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[505],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[497],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -6618,226 +6557,226 @@
     /* num open types */ 0,
     /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[4],
-    /* parameters */ &kParameters[506],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[0],
+    /* parameters */ &kParameters[498],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [133] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
-    /* num open numbers */ 2,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[2],
-    /* parameters */ &kParameters[395],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ true,
-  },
-  {
-    /* [134] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
-    /* num open numbers */ 3,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[473],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ true,
-  },
-  {
-    /* [135] */
-    /* num parameters */ 1,
+    /* num parameters */ 3,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[552],
-    /* return matcher indices */ &kMatcherIndices[187],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[345],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [134] */
+    /* num parameters */ 3,
+    /* num open types */ 0,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[348],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [135] */
+    /* num parameters */ 3,
+    /* num open types */ 0,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[351],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [136] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[551],
-    /* return matcher indices */ &kMatcherIndices[145],
+    /* num parameters */ 3,
+    /* num open types */ 1,
+    /* num open numbers */ 0,
+    /* open types */ &kOpenTypes[3],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[378],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [137] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
-    /* num open numbers */ 2,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[2],
-    /* parameters */ &kParameters[409],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* num parameters */ 3,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[3],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[375],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ true,
+    /* is_deprecated */ false,
   },
   {
     /* [138] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
-    /* num open numbers */ 3,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[407],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* num parameters */ 3,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[3],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[369],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ true,
+    /* is_deprecated */ false,
   },
   {
     /* [139] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[577],
-    /* return matcher indices */ &kMatcherIndices[188],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[413],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [140] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[576],
-    /* return matcher indices */ &kMatcherIndices[155],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[411],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [141] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[351],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[526],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [142] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[354],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[525],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [143] */
-    /* num parameters */ 3,
+    /* num parameters */ 2,
     /* num open types */ 0,
-    /* num open numbers */ 1,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[357],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[415],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [144] */
-    /* num parameters */ 3,
-    /* num open types */ 1,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[3],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[315],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* num parameters */ 2,
+    /* num open types */ 0,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[417],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [145] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[3],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[270],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* num open numbers */ 0,
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[592],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [146] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[3],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[276],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[591],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [147] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[447],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[589],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [148] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[445],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[588],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [149] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[421],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[587],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [150] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[419],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[586],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
@@ -6846,9 +6785,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[597],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[585],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6858,9 +6797,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[596],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[584],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6870,9 +6809,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[595],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[583],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6882,9 +6821,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[594],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[582],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6894,9 +6833,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[593],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[581],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6906,9 +6845,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[592],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[580],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6918,9 +6857,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[591],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[579],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6930,9 +6869,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[590],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[578],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -6942,10 +6881,10 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[589],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[577],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -6954,10 +6893,10 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[588],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[576],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -6966,10 +6905,10 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[587],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[575],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -6978,10 +6917,10 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[586],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[574],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -6990,9 +6929,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[585],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[594],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7002,9 +6941,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[584],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[593],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7014,9 +6953,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[583],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[573],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7026,33 +6965,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[582],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[572],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [167] */
-    /* num parameters */ 1,
+    /* num parameters */ 3,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[534],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[279],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [168] */
-    /* num parameters */ 1,
+    /* num parameters */ 3,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[533],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[276],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7062,9 +7001,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[581],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[571],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7074,33 +7013,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[580],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[570],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [171] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[273],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[569],
+    /* return matcher indices */ &kMatcherIndices[174],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [172] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[282],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[568],
+    /* return matcher indices */ &kMatcherIndices[143],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7110,10 +7049,10 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[579],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[567],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
@@ -7122,34 +7061,34 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[578],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[566],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [175] */
     /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[600],
-    /* return matcher indices */ &kMatcherIndices[5],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[565],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
     /* [176] */
     /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[599],
-    /* return matcher indices */ &kMatcherIndices[62],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[564],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
   {
@@ -7158,9 +7097,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[575],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[563],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -7170,9 +7109,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[574],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[562],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
     /* is_deprecated */ false,
   },
@@ -7182,10 +7121,10 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[573],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[596],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -7194,10 +7133,10 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[572],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[595],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -7206,10 +7145,10 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[571],
-    /* return matcher indices */ &kMatcherIndices[7],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[560],
+    /* return matcher indices */ &kMatcherIndices[15],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -7218,10 +7157,10 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[570],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[559],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -7230,9 +7169,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[602],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[558],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7242,9 +7181,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[601],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[557],
+    /* return matcher indices */ &kMatcherIndices[30],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7254,9 +7193,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[568],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[556],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7266,9 +7205,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[567],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[555],
+    /* return matcher indices */ &kMatcherIndices[30],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7278,9 +7217,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[566],
-    /* return matcher indices */ &kMatcherIndices[3],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[554],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7290,9 +7229,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[565],
-    /* return matcher indices */ &kMatcherIndices[68],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[553],
+    /* return matcher indices */ &kMatcherIndices[30],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7302,9 +7241,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[564],
-    /* return matcher indices */ &kMatcherIndices[3],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[552],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7314,33 +7253,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[563],
-    /* return matcher indices */ &kMatcherIndices[68],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[551],
+    /* return matcher indices */ &kMatcherIndices[30],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [191] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[562],
-    /* return matcher indices */ &kMatcherIndices[3],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[471],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [192] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[561],
-    /* return matcher indices */ &kMatcherIndices[68],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[403],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7350,9 +7289,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[560],
-    /* return matcher indices */ &kMatcherIndices[3],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[550],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7362,33 +7301,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[559],
-    /* return matcher indices */ &kMatcherIndices[68],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[549],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [195] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[405],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[548],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [196] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[387],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[547],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7398,9 +7337,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[558],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[546],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7410,117 +7349,117 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[557],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[545],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [199] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num parameters */ 2,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[556],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[445],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [200] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num parameters */ 2,
+    /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[555],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[441],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [201] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num parameters */ 2,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[554],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[429],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [202] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num parameters */ 2,
+    /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[553],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[419],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [203] */
-    /* num parameters */ 2,
+    /* num parameters */ 3,
     /* num open types */ 1,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[403],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[363],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [204] */
-    /* num parameters */ 2,
+    /* num parameters */ 3,
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[401],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[381],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [205] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
+    /* num parameters */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[399],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[544],
+    /* return matcher indices */ &kMatcherIndices[173],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [206] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
+    /* num parameters */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[397],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[543],
+    /* return matcher indices */ &kMatcherIndices[127],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [207] */
     /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[604],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[509],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7528,47 +7467,47 @@
     /* [208] */
     /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 1,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[603],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[510],
+    /* return matcher indices */ &kMatcherIndices[55],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [209] */
     /* num parameters */ 3,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[345],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[360],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [210] */
     /* num parameters */ 3,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[342],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[357],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [211] */
     /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[517],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[528],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7576,35 +7515,35 @@
     /* [212] */
     /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 0,
+    /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[518],
-    /* return matcher indices */ &kMatcherIndices[1],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[527],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [213] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[327],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[598],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [214] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[330],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[597],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7614,9 +7553,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[536],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[600],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7626,9 +7565,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[535],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[599],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7638,9 +7577,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[606],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[519],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7650,33 +7589,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[605],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[518],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [219] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[608],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[397],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [220] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[607],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[395],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7686,9 +7625,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[527],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[522],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7698,57 +7637,57 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[526],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[521],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [223] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[389],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[603],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [224] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[391],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[601],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [225] */
     /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[530],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[536],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [226] */
     /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[529],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[535],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7758,9 +7697,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[611],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[534],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7770,33 +7709,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[609],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[533],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [229] */
     /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[544],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[608],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [230] */
     /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num open types */ 0,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[543],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[607],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7806,9 +7745,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[542],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[532],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7818,9 +7757,9 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[541],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[531],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7830,9 +7769,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[616],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[530],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7842,33 +7781,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[615],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[529],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [235] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[540],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[423],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [236] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[539],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[425],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7878,9 +7817,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[538],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[524],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7890,33 +7829,33 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[537],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[523],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [239] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
+    /* num parameters */ 1,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[431],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[610],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [240] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
+    /* num parameters */ 1,
+    /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[433],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open types */ &kOpenTypes[1],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[609],
+    /* return matcher indices */ &kMatcherIndices[24],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7926,45 +7865,45 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[532],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[540],
+    /* return matcher indices */ &kMatcherIndices[1],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [242] */
-    /* num parameters */ 1,
+    /* num parameters */ 0,
     /* num open types */ 0,
-    /* num open numbers */ 1,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[531],
-    /* return matcher indices */ &kMatcherIndices[10],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[611],
+    /* return matcher indices */ nullptr,
+    /* supported_stages */ PipelineStageSet(PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [243] */
-    /* num parameters */ 1,
-    /* num open types */ 1,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[618],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* num parameters */ 3,
+    /* num open types */ 0,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[267],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [244] */
-    /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num parameters */ 2,
+    /* num open types */ 0,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[1],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[617],
-    /* return matcher indices */ &kMatcherIndices[62],
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[393],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -7972,47 +7911,47 @@
     /* [245] */
     /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 0,
+    /* num open numbers */ 2,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[548],
-    /* return matcher indices */ &kMatcherIndices[75],
+    /* open numbers */ &kOpenNumbers[2],
+    /* parameters */ &kParameters[520],
+    /* return matcher indices */ &kMatcherIndices[12],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [246] */
-    /* num parameters */ 0,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[619],
-    /* return matcher indices */ nullptr,
-    /* supported_stages */ PipelineStageSet(PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[537],
+    /* return matcher indices */ &kMatcherIndices[1],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [247] */
-    /* num parameters */ 3,
+    /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 1,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[360],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[517],
+    /* return matcher indices */ &kMatcherIndices[129],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [248] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 1,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[393],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[516],
+    /* return matcher indices */ &kMatcherIndices[129],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8020,11 +7959,11 @@
     /* [249] */
     /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 2,
+    /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[0],
-    /* parameters */ &kParameters[528],
-    /* return matcher indices */ &kMatcherIndices[36],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[515],
+    /* return matcher indices */ &kMatcherIndices[129],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8034,9 +7973,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[545],
-    /* return matcher indices */ &kMatcherIndices[75],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[514],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8046,22 +7985,22 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[525],
-    /* return matcher indices */ &kMatcherIndices[141],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[513],
+    /* return matcher indices */ &kMatcherIndices[119],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [252] */
-    /* num parameters */ 1,
+    /* num parameters */ 0,
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[524],
-    /* return matcher indices */ &kMatcherIndices[141],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[611],
+    /* return matcher indices */ nullptr,
+    /* supported_stages */ PipelineStageSet(PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
@@ -8070,9 +8009,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[523],
-    /* return matcher indices */ &kMatcherIndices[141],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[538],
+    /* return matcher indices */ &kMatcherIndices[1],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8082,9 +8021,9 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[522],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[539],
+    /* return matcher indices */ &kMatcherIndices[1],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8094,57 +8033,57 @@
     /* num open types */ 0,
     /* num open numbers */ 0,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[521],
-    /* return matcher indices */ &kMatcherIndices[135],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[541],
+    /* return matcher indices */ &kMatcherIndices[1],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [256] */
-    /* num parameters */ 0,
+    /* num parameters */ 1,
     /* num open types */ 0,
-    /* num open numbers */ 0,
+    /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[619],
-    /* return matcher indices */ nullptr,
-    /* supported_stages */ PipelineStageSet(PipelineStage::kCompute),
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[542],
+    /* return matcher indices */ &kMatcherIndices[27],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [257] */
     /* num parameters */ 1,
-    /* num open types */ 0,
+    /* num open types */ 1,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[546],
-    /* return matcher indices */ &kMatcherIndices[75],
+    /* open types */ &kOpenTypes[0],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[561],
+    /* return matcher indices */ nullptr,
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [258] */
-    /* num parameters */ 1,
+    /* num parameters */ 3,
     /* num open types */ 0,
-    /* num open numbers */ 0,
+    /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[547],
-    /* return matcher indices */ &kMatcherIndices[75],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[288],
+    /* return matcher indices */ &kMatcherIndices[27],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [259] */
-    /* num parameters */ 1,
+    /* num parameters */ 2,
     /* num open types */ 0,
-    /* num open numbers */ 0,
+    /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[549],
-    /* return matcher indices */ &kMatcherIndices[75],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[455],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8154,45 +8093,45 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[550],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[590],
+    /* return matcher indices */ &kMatcherIndices[15],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [261] */
-    /* num parameters */ 1,
-    /* num open types */ 1,
+    /* num parameters */ 2,
+    /* num open types */ 0,
     /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[0],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[569],
-    /* return matcher indices */ nullptr,
+    /* open types */ &kOpenTypes[4],
+    /* open numbers */ &kOpenNumbers[6],
+    /* parameters */ &kParameters[401],
+    /* return matcher indices */ &kMatcherIndices[131],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [262] */
-    /* num parameters */ 3,
-    /* num open types */ 0,
+    /* num parameters */ 1,
+    /* num open types */ 1,
     /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[291],
-    /* return matcher indices */ &kMatcherIndices[10],
+    /* open types */ &kOpenTypes[0],
+    /* open numbers */ &kOpenNumbers[5],
+    /* parameters */ &kParameters[604],
+    /* return matcher indices */ &kMatcherIndices[1],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [263] */
-    /* num parameters */ 2,
+    /* num parameters */ 1,
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[417],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[605],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8202,69 +8141,69 @@
     /* num open types */ 0,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[598],
-    /* return matcher indices */ &kMatcherIndices[7],
+    /* open numbers */ &kOpenNumbers[3],
+    /* parameters */ &kParameters[606],
+    /* return matcher indices */ &kMatcherIndices[13],
     /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [265] */
-    /* num parameters */ 2,
-    /* num open types */ 0,
-    /* num open numbers */ 0,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[7],
-    /* parameters */ &kParameters[425],
-    /* return matcher indices */ &kMatcherIndices[131],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [266] */
-    /* num parameters */ 1,
-    /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[0],
-    /* open numbers */ &kOpenNumbers[3],
-    /* parameters */ &kParameters[612],
-    /* return matcher indices */ &kMatcherIndices[75],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [267] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[613],
-    /* return matcher indices */ &kMatcherIndices[3],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [268] */
-    /* num parameters */ 1,
-    /* num open types */ 0,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[4],
-    /* open numbers */ &kOpenNumbers[1],
-    /* parameters */ &kParameters[614],
-    /* return matcher indices */ &kMatcherIndices[3],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [269] */
     /* num parameters */ 1,
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[610],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[602],
+    /* return matcher indices */ &kMatcherIndices[3],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [266] */
+    /* num parameters */ 2,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[433],
+    /* return matcher indices */ nullptr,
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [267] */
+    /* num parameters */ 2,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[435],
+    /* return matcher indices */ &kMatcherIndices[3],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [268] */
+    /* num parameters */ 2,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[439],
+    /* return matcher indices */ &kMatcherIndices[3],
+    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
+    /* is_deprecated */ false,
+  },
+  {
+    /* [269] */
+    /* num parameters */ 2,
+    /* num open types */ 1,
+    /* num open numbers */ 1,
+    /* open types */ &kOpenTypes[2],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[443],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8274,9 +8213,9 @@
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[453],
-    /* return matcher indices */ nullptr,
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[447],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8286,9 +8225,9 @@
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[455],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[449],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8298,9 +8237,9 @@
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[457],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[451],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8310,9 +8249,9 @@
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[459],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[453],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8322,69 +8261,21 @@
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[463],
-    /* return matcher indices */ &kMatcherIndices[5],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[427],
+    /* return matcher indices */ &kMatcherIndices[3],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
   {
     /* [275] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[467],
-    /* return matcher indices */ &kMatcherIndices[5],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [276] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[475],
-    /* return matcher indices */ &kMatcherIndices[5],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [277] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[461],
-    /* return matcher indices */ &kMatcherIndices[5],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [278] */
-    /* num parameters */ 2,
-    /* num open types */ 1,
-    /* num open numbers */ 1,
-    /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[435],
-    /* return matcher indices */ &kMatcherIndices[5],
-    /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
-    /* is_deprecated */ false,
-  },
-  {
-    /* [279] */
     /* num parameters */ 3,
     /* num open types */ 1,
     /* num open numbers */ 1,
     /* open types */ &kOpenTypes[2],
-    /* open numbers */ &kOpenNumbers[6],
-    /* parameters */ &kParameters[318],
-    /* return matcher indices */ &kMatcherIndices[177],
+    /* open numbers */ &kOpenNumbers[4],
+    /* parameters */ &kParameters[354],
+    /* return matcher indices */ &kMatcherIndices[163],
     /* supported_stages */ PipelineStageSet(PipelineStage::kFragment, PipelineStage::kCompute),
     /* is_deprecated */ false,
   },
@@ -8396,309 +8287,307 @@
     /* fn abs<T : fiu32>(T) -> T */
     /* fn abs<N : num, T : fiu32>(vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[243],
+    /* overloads */ &kOverloads[239],
   },
   {
     /* [1] */
     /* fn acos(f32) -> f32 */
     /* fn acos<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[233],
+    /* overloads */ &kOverloads[229],
   },
   {
     /* [2] */
     /* fn all<N : num>(vec<N, bool>) -> bool */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[268],
+    /* overloads */ &kOverloads[264],
   },
   {
     /* [3] */
     /* fn any<N : num>(vec<N, bool>) -> bool */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[267],
+    /* overloads */ &kOverloads[263],
   },
   {
     /* [4] */
     /* fn arrayLength<T, A : access>(ptr<storage, array<T>, A>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[266],
+    /* overloads */ &kOverloads[262],
   },
   {
     /* [5] */
     /* fn asin(f32) -> f32 */
     /* fn asin<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[227],
+    /* overloads */ &kOverloads[223],
   },
   {
     /* [6] */
     /* fn atan(f32) -> f32 */
     /* fn atan<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[219],
+    /* overloads */ &kOverloads[215],
   },
   {
     /* [7] */
     /* fn atan2(f32, f32) -> f32 */
     /* fn atan2<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[147],
+    /* overloads */ &kOverloads[139],
   },
   {
     /* [8] */
     /* fn ceil(f32) -> f32 */
     /* fn ceil<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[217],
+    /* overloads */ &kOverloads[213],
   },
   {
     /* [9] */
     /* fn clamp<T : fiu32>(T, T, T) -> T */
     /* fn clamp<N : num, T : fiu32>(vec<N, T>, vec<N, T>, vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[209],
+    /* overloads */ &kOverloads[203],
   },
   {
     /* [10] */
     /* fn cos(f32) -> f32 */
     /* fn cos<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[207],
+    /* overloads */ &kOverloads[179],
   },
   {
     /* [11] */
     /* fn cosh(f32) -> f32 */
     /* fn cosh<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[183],
+    /* overloads */ &kOverloads[163],
   },
   {
     /* [12] */
     /* fn countOneBits<T : iu32>(T) -> T */
     /* fn countOneBits<N : num, T : iu32>(vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[175],
+    /* overloads */ &kOverloads[145],
   },
   {
     /* [13] */
     /* fn cross(vec3<f32>, vec3<f32>) -> vec3<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[265],
+    /* overloads */ &kOverloads[261],
   },
   {
     /* [14] */
     /* fn determinant<N : num>(mat<N, N, f32>) -> f32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[264],
+    /* overloads */ &kOverloads[260],
   },
   {
     /* [15] */
     /* fn distance(f32, f32) -> f32 */
     /* fn distance<N : num>(vec<N, f32>, vec<N, f32>) -> f32 */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[149],
+    /* overloads */ &kOverloads[143],
   },
   {
     /* [16] */
     /* fn dot<N : num>(vec<N, f32>, vec<N, f32>) -> f32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[263],
+    /* overloads */ &kOverloads[259],
   },
   {
     /* [17] */
     /* fn dpdx(f32) -> f32 */
     /* fn dpdx<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[151],
+    /* overloads */ &kOverloads[147],
   },
   {
     /* [18] */
     /* fn dpdxCoarse(f32) -> f32 */
     /* fn dpdxCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[153],
+    /* overloads */ &kOverloads[149],
   },
   {
     /* [19] */
     /* fn dpdxFine(f32) -> f32 */
     /* fn dpdxFine<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[155],
+    /* overloads */ &kOverloads[151],
   },
   {
     /* [20] */
     /* fn dpdy(f32) -> f32 */
     /* fn dpdy<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[157],
+    /* overloads */ &kOverloads[153],
   },
   {
     /* [21] */
     /* fn dpdyCoarse(f32) -> f32 */
     /* fn dpdyCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[159],
+    /* overloads */ &kOverloads[155],
   },
   {
     /* [22] */
     /* fn dpdyFine(f32) -> f32 */
     /* fn dpdyFine<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[161],
+    /* overloads */ &kOverloads[157],
   },
   {
     /* [23] */
     /* fn exp(f32) -> f32 */
     /* fn exp<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[163],
+    /* overloads */ &kOverloads[159],
   },
   {
     /* [24] */
     /* fn exp2(f32) -> f32 */
     /* fn exp2<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[165],
+    /* overloads */ &kOverloads[161],
   },
   {
     /* [25] */
     /* fn faceForward<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[262],
+    /* overloads */ &kOverloads[258],
   },
   {
     /* [26] */
     /* fn floor(f32) -> f32 */
     /* fn floor<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[169],
+    /* overloads */ &kOverloads[165],
   },
   {
     /* [27] */
     /* fn fma(f32, f32, f32) -> f32 */
     /* fn fma<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[171],
+    /* overloads */ &kOverloads[167],
   },
   {
     /* [28] */
     /* fn fract(f32) -> f32 */
     /* fn fract<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[173],
+    /* overloads */ &kOverloads[169],
   },
   {
     /* [29] */
-    /* fn frexp<S : function_private_workgroup, A : access>(f32, ptr<S, i32, A>) -> f32 */
-    /* fn frexp<N : num, S : function_private_workgroup, A : access>(vec<N, f32>, ptr<S, vec<N, i32>, A>) -> vec<N, f32> */
     /* fn frexp(f32) -> _frexp_result */
     /* fn frexp<N : num>(vec<N, f32>) -> _frexp_result_vec<N> */
-    /* num overloads */ 4,
-    /* overloads */ &kOverloads[137],
+    /* num overloads */ 2,
+    /* overloads */ &kOverloads[171],
   },
   {
     /* [30] */
     /* fn fwidth(f32) -> f32 */
     /* fn fwidth<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[177],
+    /* overloads */ &kOverloads[173],
   },
   {
     /* [31] */
     /* fn fwidthCoarse(f32) -> f32 */
     /* fn fwidthCoarse<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[179],
+    /* overloads */ &kOverloads[175],
   },
   {
     /* [32] */
     /* fn fwidthFine(f32) -> f32 */
     /* fn fwidthFine<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[181],
+    /* overloads */ &kOverloads[177],
   },
   {
     /* [33] */
     /* fn ignore<T>(T) */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[261],
+    /* overloads */ &kOverloads[257],
   },
   {
     /* [34] */
     /* fn inverseSqrt(f32) -> f32 */
     /* fn inverseSqrt<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[185],
+    /* overloads */ &kOverloads[181],
   },
   {
     /* [35] */
     /* fn isFinite(f32) -> bool */
     /* fn isFinite<N : num>(vec<N, f32>) -> vec<N, bool> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[187],
+    /* overloads */ &kOverloads[183],
   },
   {
     /* [36] */
     /* fn isInf(f32) -> bool */
     /* fn isInf<N : num>(vec<N, f32>) -> vec<N, bool> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[189],
+    /* overloads */ &kOverloads[185],
   },
   {
     /* [37] */
     /* fn isNan(f32) -> bool */
     /* fn isNan<N : num>(vec<N, f32>) -> vec<N, bool> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[191],
+    /* overloads */ &kOverloads[187],
   },
   {
     /* [38] */
     /* fn isNormal(f32) -> bool */
     /* fn isNormal<N : num>(vec<N, f32>) -> vec<N, bool> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[193],
+    /* overloads */ &kOverloads[189],
   },
   {
     /* [39] */
     /* fn ldexp(f32, i32) -> f32 */
     /* fn ldexp<N : num>(vec<N, f32>, vec<N, i32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[195],
+    /* overloads */ &kOverloads[191],
   },
   {
     /* [40] */
     /* fn length(f32) -> f32 */
     /* fn length<N : num>(vec<N, f32>) -> f32 */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[197],
+    /* overloads */ &kOverloads[193],
   },
   {
     /* [41] */
     /* fn log(f32) -> f32 */
     /* fn log<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[199],
+    /* overloads */ &kOverloads[195],
   },
   {
     /* [42] */
     /* fn log2(f32) -> f32 */
     /* fn log2<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[201],
+    /* overloads */ &kOverloads[197],
   },
   {
     /* [43] */
     /* fn max<T : fiu32>(T, T) -> T */
     /* fn max<N : num, T : fiu32>(vec<N, T>, vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[203],
+    /* overloads */ &kOverloads[199],
   },
   {
     /* [44] */
     /* fn min<T : fiu32>(T, T) -> T */
     /* fn min<N : num, T : fiu32>(vec<N, T>, vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[205],
+    /* overloads */ &kOverloads[201],
   },
   {
     /* [45] */
@@ -8706,85 +8595,83 @@
     /* fn mix<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* fn mix<N : num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32> */
     /* num overloads */ 3,
-    /* overloads */ &kOverloads[141],
+    /* overloads */ &kOverloads[133],
   },
   {
     /* [46] */
-    /* fn modf<S : function_private_workgroup, A : access>(f32, ptr<S, f32, A>) -> f32 */
-    /* fn modf<N : num, S : function_private_workgroup, A : access>(vec<N, f32>, ptr<S, vec<N, f32>, A>) -> vec<N, f32> */
     /* fn modf(f32) -> _modf_result */
     /* fn modf<N : num>(vec<N, f32>) -> _modf_result_vec<N> */
-    /* num overloads */ 4,
-    /* overloads */ &kOverloads[133],
+    /* num overloads */ 2,
+    /* overloads */ &kOverloads[205],
   },
   {
     /* [47] */
     /* fn normalize<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[260],
+    /* overloads */ &kOverloads[256],
   },
   {
     /* [48] */
     /* fn pack2x16float(vec2<f32>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[259],
+    /* overloads */ &kOverloads[255],
   },
   {
     /* [49] */
     /* fn pack2x16snorm(vec2<f32>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[245],
+    /* overloads */ &kOverloads[241],
   },
   {
     /* [50] */
     /* fn pack2x16unorm(vec2<f32>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[258],
+    /* overloads */ &kOverloads[254],
   },
   {
     /* [51] */
     /* fn pack4x8snorm(vec4<f32>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[257],
+    /* overloads */ &kOverloads[253],
   },
   {
     /* [52] */
     /* fn pack4x8unorm(vec4<f32>) -> u32 */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[250],
+    /* overloads */ &kOverloads[246],
   },
   {
     /* [53] */
     /* fn pow(f32, f32) -> f32 */
     /* fn pow<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[223],
+    /* overloads */ &kOverloads[219],
   },
   {
     /* [54] */
     /* fn reflect<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[248],
+    /* overloads */ &kOverloads[244],
   },
   {
     /* [55] */
     /* fn refract<N : num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[247],
+    /* overloads */ &kOverloads[243],
   },
   {
     /* [56] */
     /* fn reverseBits<T : iu32>(T) -> T */
     /* fn reverseBits<N : num, T : iu32>(vec<N, T>) -> vec<N, T> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[229],
+    /* overloads */ &kOverloads[225],
   },
   {
     /* [57] */
     /* fn round(f32) -> f32 */
     /* fn round<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[231],
+    /* overloads */ &kOverloads[227],
   },
   {
     /* [58] */
@@ -8792,118 +8679,118 @@
     /* fn select<T : scalar, N : num>(vec<N, T>, vec<N, T>, bool) -> vec<N, T> */
     /* fn select<N : num, T : scalar>(vec<N, T>, vec<N, T>, vec<N, bool>) -> vec<N, T> */
     /* num overloads */ 3,
-    /* overloads */ &kOverloads[144],
+    /* overloads */ &kOverloads[136],
   },
   {
     /* [59] */
     /* fn sign(f32) -> f32 */
     /* fn sign<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[235],
+    /* overloads */ &kOverloads[231],
   },
   {
     /* [60] */
     /* fn sin(f32) -> f32 */
     /* fn sin<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[237],
+    /* overloads */ &kOverloads[233],
   },
   {
     /* [61] */
     /* fn sinh(f32) -> f32 */
     /* fn sinh<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[215],
+    /* overloads */ &kOverloads[211],
   },
   {
     /* [62] */
     /* fn smoothStep(f32, f32, f32) -> f32 */
     /* fn smoothStep<N : num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[213],
+    /* overloads */ &kOverloads[209],
   },
   {
     /* [63] */
     /* fn sqrt(f32) -> f32 */
     /* fn sqrt<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[167],
+    /* overloads */ &kOverloads[141],
   },
   {
     /* [64] */
     /* fn step(f32, f32) -> f32 */
     /* fn step<N : num>(vec<N, f32>, vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[239],
+    /* overloads */ &kOverloads[235],
   },
   {
     /* [65] */
     /* fn storageBarrier() */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[246],
+    /* overloads */ &kOverloads[242],
   },
   {
     /* [66] */
     /* fn tan(f32) -> f32 */
     /* fn tan<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[241],
+    /* overloads */ &kOverloads[237],
   },
   {
     /* [67] */
     /* fn tanh(f32) -> f32 */
     /* fn tanh<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[225],
+    /* overloads */ &kOverloads[221],
   },
   {
     /* [68] */
     /* fn transpose<M : num, N : num>(mat<M, N, f32>) -> mat<N, M, f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[249],
+    /* overloads */ &kOverloads[245],
   },
   {
     /* [69] */
     /* fn trunc(f32) -> f32 */
     /* fn trunc<N : num>(vec<N, f32>) -> vec<N, f32> */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[221],
+    /* overloads */ &kOverloads[217],
   },
   {
     /* [70] */
     /* fn unpack2x16float(u32) -> vec2<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[251],
+    /* overloads */ &kOverloads[247],
   },
   {
     /* [71] */
     /* fn unpack2x16snorm(u32) -> vec2<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[252],
+    /* overloads */ &kOverloads[248],
   },
   {
     /* [72] */
     /* fn unpack2x16unorm(u32) -> vec2<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[253],
+    /* overloads */ &kOverloads[249],
   },
   {
     /* [73] */
     /* fn unpack4x8snorm(u32) -> vec4<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[254],
+    /* overloads */ &kOverloads[250],
   },
   {
     /* [74] */
     /* fn unpack4x8unorm(u32) -> vec4<f32> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[255],
+    /* overloads */ &kOverloads[251],
   },
   {
     /* [75] */
     /* fn workgroupBarrier() */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[256],
+    /* overloads */ &kOverloads[252],
   },
   {
     /* [76] */
@@ -8967,7 +8854,7 @@
     /* fn textureNumSamples<T : fiu32>(texture: texture_multisampled_2d<T>) -> i32 */
     /* fn textureNumSamples(texture: texture_depth_multisampled_2d) -> i32 */
     /* num overloads */ 2,
-    /* overloads */ &kOverloads[211],
+    /* overloads */ &kOverloads[207],
   },
   {
     /* [80] */
@@ -9000,7 +8887,7 @@
     /* fn textureSampleBias(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, bias: f32) -> vec4<f32> */
     /* fn textureSampleBias(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32, bias: f32) -> vec4<f32> */
     /* num overloads */ 8,
-    /* overloads */ &kOverloads[108],
+    /* overloads */ &kOverloads[100],
   },
   {
     /* [82] */
@@ -9035,7 +8922,7 @@
     /* fn textureSampleGrad(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, ddx: vec3<f32>, ddy: vec3<f32>) -> vec4<f32> */
     /* fn textureSampleGrad(texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: i32, ddx: vec3<f32>, ddy: vec3<f32>) -> vec4<f32> */
     /* num overloads */ 8,
-    /* overloads */ &kOverloads[100],
+    /* overloads */ &kOverloads[108],
   },
   {
     /* [85] */
@@ -9104,67 +8991,67 @@
     /* [88] */
     /* fn atomicLoad<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[269],
+    /* overloads */ &kOverloads[265],
   },
   {
     /* [89] */
     /* fn atomicStore<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[270],
+    /* overloads */ &kOverloads[266],
   },
   {
     /* [90] */
     /* fn atomicAdd<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[271],
+    /* overloads */ &kOverloads[267],
   },
   {
     /* [91] */
     /* fn atomicSub<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[272],
+    /* overloads */ &kOverloads[268],
   },
   {
     /* [92] */
     /* fn atomicMax<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[273],
+    /* overloads */ &kOverloads[269],
   },
   {
     /* [93] */
     /* fn atomicMin<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[274],
+    /* overloads */ &kOverloads[270],
   },
   {
     /* [94] */
     /* fn atomicAnd<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[275],
+    /* overloads */ &kOverloads[271],
   },
   {
     /* [95] */
     /* fn atomicOr<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[276],
+    /* overloads */ &kOverloads[272],
   },
   {
     /* [96] */
     /* fn atomicXor<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[277],
+    /* overloads */ &kOverloads[273],
   },
   {
     /* [97] */
     /* fn atomicExchange<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T) -> T */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[278],
+    /* overloads */ &kOverloads[274],
   },
   {
     /* [98] */
     /* fn atomicCompareExchangeWeak<T : iu32, S : workgroup_or_storage>(ptr<S, atomic<T>, read_write>, T, T) -> vec2<T> */
     /* num overloads */ 1,
-    /* overloads */ &kOverloads[279],
+    /* overloads */ &kOverloads[275],
   },
 };
 
diff --git a/src/intrinsic_table_test.cc b/src/intrinsic_table_test.cc
index 9a334ad..2fda174 100644
--- a/src/intrinsic_table_test.cc
+++ b/src/intrinsic_table_test.cc
@@ -16,6 +16,7 @@
 
 #include "gmock/gmock.h"
 #include "src/program_builder.h"
+#include "src/sem/atomic_type.h"
 #include "src/sem/depth_multisampled_texture_type.h"
 #include "src/sem/depth_texture_type.h"
 #include "src/sem/external_texture_type.h"
@@ -211,22 +212,24 @@
 }
 
 TEST_F(IntrinsicTableTest, MatchPointer) {
-  auto* f32 = create<sem::F32>();
-  auto* ptr = create<sem::Pointer>(f32, ast::StorageClass::kFunction,
+  auto* i32 = create<sem::I32>();
+  auto* atomicI32 = create<sem::Atomic>(i32);
+  auto* ptr = create<sem::Pointer>(atomicI32, ast::StorageClass::kWorkgroup,
                                    ast::Access::kReadWrite);
-  auto* result = table->Lookup(IntrinsicType::kModf, {f32, ptr}, Source{});
+  auto* result = table->Lookup(IntrinsicType::kAtomicLoad, {ptr}, Source{});
   ASSERT_NE(result, nullptr) << Diagnostics().str();
   ASSERT_EQ(Diagnostics().str(), "");
-  EXPECT_THAT(result->Type(), IntrinsicType::kModf);
-  EXPECT_THAT(result->ReturnType(), f32);
-  ASSERT_EQ(result->Parameters().size(), 2u);
-  EXPECT_EQ(result->Parameters()[0]->Type(), f32);
-  EXPECT_EQ(result->Parameters()[1]->Type(), ptr);
+  EXPECT_THAT(result->Type(), IntrinsicType::kAtomicLoad);
+  EXPECT_THAT(result->ReturnType(), i32);
+  ASSERT_EQ(result->Parameters().size(), 1u);
+  EXPECT_EQ(result->Parameters()[0]->Type(), ptr);
 }
 
 TEST_F(IntrinsicTableTest, MismatchPointer) {
-  auto* f32 = create<sem::F32>();
-  auto* result = table->Lookup(IntrinsicType::kModf, {f32, f32}, Source{});
+  auto* i32 = create<sem::I32>();
+  auto* atomicI32 = create<sem::Atomic>(i32);
+  auto* result =
+      table->Lookup(IntrinsicType::kAtomicLoad, {atomicI32}, Source{});
   ASSERT_EQ(result, nullptr);
   ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
 }
diff --git a/src/intrinsics.def b/src/intrinsics.def
index d5faa32..dca62bd 100644
--- a/src/intrinsics.def
+++ b/src/intrinsics.def
@@ -314,8 +314,6 @@
 fn fma<N: num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32>
 fn fract(f32) -> f32
 fn fract<N: num>(vec<N, f32>) -> vec<N, f32>
-[[deprecated]] fn frexp<S: function_private_workgroup, A: access>(f32, ptr<S, i32, A>) -> f32
-[[deprecated]] fn frexp<N: num, S: function_private_workgroup, A: access>(vec<N, f32>, ptr<S, vec<N, i32>, A>) -> vec<N, f32>
 fn frexp(f32) -> _frexp_result
 fn frexp<N: num>(vec<N, f32>) -> _frexp_result_vec<N>
 [[stage("fragment")]] fn fwidth(f32) -> f32
@@ -350,8 +348,6 @@
 fn mix(f32, f32, f32) -> f32
 fn mix<N: num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32>
 fn mix<N: num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32>
-[[deprecated]] fn modf<S: function_private_workgroup, A: access>(f32, ptr<S, f32, A>) -> f32
-[[deprecated]] fn modf<N: num, S: function_private_workgroup, A: access>(vec<N, f32>, ptr<S, vec<N, f32>, A>) -> vec<N, f32>
 fn modf(f32) -> _modf_result
 fn modf<N: num>(vec<N, f32>) -> _modf_result_vec<N>
 fn normalize<N: num>(vec<N, f32>) -> vec<N, f32>
diff --git a/src/resolver/builtins_validation_test.cc b/src/resolver/builtins_validation_test.cc
index 733093a..29e99fb 100644
--- a/src/resolver/builtins_validation_test.cc
+++ b/src/resolver/builtins_validation_test.cc
@@ -766,87 +766,131 @@
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Frexp_Scalar) {
-  auto* a = Var("a", ty.i32());
-  auto* builtin = Call("frexp", 1.0f, AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("frexp", 1.0f);
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->Is<sem::F32>());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  EXPECT_TRUE(members[0]->Type()->Is<sem::F32>());
+  EXPECT_TRUE(members[1]->Type()->Is<sem::I32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Frexp_Vec2) {
-  auto* a = Var("a", ty.vec2<int>());
-  auto* builtin = Call("frexp", vec2<f32>(1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("frexp", vec2<f32>(1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 2u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 2u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::I32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Frexp_Vec3) {
-  auto* a = Var("a", ty.vec3<int>());
-  auto* builtin =
-      Call("frexp", vec3<f32>(1.0f, 1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("frexp", vec3<f32>(1.0f, 1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 3u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 3u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::I32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Frexp_Vec4) {
-  auto* a = Var("a", ty.vec4<int>());
-  auto* builtin =
-      Call("frexp", vec4<f32>(1.0f, 1.0f, 1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("frexp", vec4<f32>(1.0f, 1.0f, 1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 4u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 4u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::I32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Modf_Scalar) {
-  auto* a = Var("a", ty.f32());
-  auto* builtin = Call("modf", 1.0f, AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("modf", 1.0f);
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->Is<sem::F32>());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  EXPECT_TRUE(members[0]->Type()->Is<sem::F32>());
+  EXPECT_TRUE(members[1]->Type()->Is<sem::F32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Modf_Vec2) {
-  auto* a = Var("a", ty.vec2<f32>());
-  auto* builtin = Call("modf", vec2<f32>(1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("modf", vec2<f32>(1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 2u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 2u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Modf_Vec3) {
-  auto* a = Var("a", ty.vec3<f32>());
-  auto* builtin =
-      Call("modf", vec3<f32>(1.0f, 1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("modf", vec3<f32>(1.0f, 1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 3u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 3u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Modf_Vec4) {
-  auto* a = Var("a", ty.vec4<f32>());
-  auto* builtin =
-      Call("modf", vec4<f32>(1.0f, 1.0f, 1.0f, 1.0f), AddressOf(Expr("a")));
-  WrapInFunction(Decl(a), builtin);
+  auto* builtin = Call("modf", vec4<f32>(1.0f, 1.0f, 1.0f, 1.0f));
+  WrapInFunction(builtin);
 
   EXPECT_TRUE(r()->Resolve()) << r()->error();
-  EXPECT_TRUE(TypeOf(builtin)->is_float_vector());
-  EXPECT_TRUE(TypeOf(builtin->params()[1])->Is<sem::Pointer>());
+  auto* res_ty = TypeOf(builtin)->As<sem::Struct>();
+  ASSERT_TRUE(res_ty != nullptr);
+  auto& members = res_ty->Members();
+  ASSERT_EQ(members.size(), 2u);
+  ASSERT_TRUE(members[0]->Type()->Is<sem::Vector>());
+  ASSERT_TRUE(members[1]->Type()->Is<sem::Vector>());
+  EXPECT_EQ(members[0]->Type()->As<sem::Vector>()->Width(), 4u);
+  EXPECT_TRUE(members[0]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
+  EXPECT_EQ(members[1]->Type()->As<sem::Vector>()->Width(), 4u);
+  EXPECT_TRUE(members[1]->Type()->As<sem::Vector>()->type()->Is<sem::F32>());
 }
 
 TEST_F(ResolverBuiltinsValidationTest, Cross_Float_Vec3) {
diff --git a/src/resolver/intrinsic_test.cc b/src/resolver/intrinsic_test.cc
index 9270e0a..7e38a9a 100644
--- a/src/resolver/intrinsic_test.cc
+++ b/src/resolver/intrinsic_test.cc
@@ -828,29 +828,6 @@
 )");
 }
 
-TEST_F(ResolverIntrinsicDataTest, DEPRECATED_FrexpScalar) {
-  Global("exp", ty.i32(), ast::StorageClass::kWorkgroup);
-  auto* call = Call("frexp", 1.0f, AddressOf("exp"));
-  WrapInFunction(call);
-
-  EXPECT_TRUE(r()->Resolve()) << r()->error();
-
-  ASSERT_NE(TypeOf(call), nullptr);
-  EXPECT_TRUE(TypeOf(call)->Is<sem::F32>());
-}
-
-TEST_F(ResolverIntrinsicDataTest, DEPRECATED_FrexpVector) {
-  Global("exp", ty.vec3<i32>(), ast::StorageClass::kWorkgroup);
-  auto* call = Call("frexp", vec3<f32>(1.0f, 2.0f, 3.0f), AddressOf("exp"));
-  WrapInFunction(call);
-
-  EXPECT_TRUE(r()->Resolve()) << r()->error();
-
-  ASSERT_NE(TypeOf(call), nullptr);
-  EXPECT_TRUE(TypeOf(call)->Is<sem::Vector>());
-  EXPECT_TRUE(TypeOf(call)->As<sem::Vector>()->type()->Is<sem::F32>());
-}
-
 TEST_F(ResolverIntrinsicDataTest, FrexpScalar) {
   auto* call = Call("frexp", 1.0f);
   WrapInFunction(call);
@@ -924,9 +901,7 @@
       r()->error(),
       R"(error: no matching call to frexp(i32, ptr<workgroup, i32, read_write>)
 
-4 candidate functions:
-  frexp(f32, ptr<S, i32, A>) -> f32  where: S is function, private or workgroup
-  frexp(vecN<f32>, ptr<S, vecN<i32>, A>) -> vecN<f32>  where: S is function, private or workgroup
+2 candidate functions:
   frexp(f32) -> _frexp_result
   frexp(vecN<f32>) -> _frexp_result_vecN
 )");
@@ -943,10 +918,8 @@
       r()->error(),
       R"(error: no matching call to frexp(f32, ptr<workgroup, f32, read_write>)
 
-4 candidate functions:
-  frexp(f32, ptr<S, i32, A>) -> f32  where: S is function, private or workgroup
+2 candidate functions:
   frexp(f32) -> _frexp_result
-  frexp(vecN<f32>, ptr<S, vecN<i32>, A>) -> vecN<f32>  where: S is function, private or workgroup
   frexp(vecN<f32>) -> _frexp_result_vecN
 )");
 }
@@ -959,10 +932,8 @@
 
   EXPECT_EQ(r()->error(), R"(error: no matching call to frexp(f32, i32)
 
-4 candidate functions:
-  frexp(f32, ptr<S, i32, A>) -> f32  where: S is function, private or workgroup
+2 candidate functions:
   frexp(f32) -> _frexp_result
-  frexp(vecN<f32>, ptr<S, vecN<i32>, A>) -> vecN<f32>  where: S is function, private or workgroup
   frexp(vecN<f32>) -> _frexp_result_vecN
 )");
 }
@@ -978,37 +949,12 @@
       r()->error(),
       R"(error: no matching call to frexp(vec2<f32>, ptr<workgroup, vec4<i32>, read_write>)
 
-4 candidate functions:
-  frexp(vecN<f32>, ptr<S, vecN<i32>, A>) -> vecN<f32>  where: S is function, private or workgroup
+2 candidate functions:
   frexp(vecN<f32>) -> _frexp_result_vecN
-  frexp(f32, ptr<S, i32, A>) -> f32  where: S is function, private or workgroup
   frexp(f32) -> _frexp_result
 )");
 }
 
-TEST_F(ResolverIntrinsicDataTest, DEPRECATED_ModfScalar) {
-  Global("whole", ty.f32(), ast::StorageClass::kWorkgroup);
-  auto* call = Call("modf", 1.0f, AddressOf("whole"));
-  WrapInFunction(call);
-
-  EXPECT_TRUE(r()->Resolve()) << r()->error();
-
-  ASSERT_NE(TypeOf(call), nullptr);
-  EXPECT_TRUE(TypeOf(call)->Is<sem::F32>());
-}
-
-TEST_F(ResolverIntrinsicDataTest, DEPRECATED_ModfVector) {
-  Global("whole", ty.vec3<f32>(), ast::StorageClass::kWorkgroup);
-  auto* call = Call("modf", vec3<f32>(1.0f, 2.0f, 3.0f), AddressOf("whole"));
-  WrapInFunction(call);
-
-  EXPECT_TRUE(r()->Resolve()) << r()->error();
-
-  ASSERT_NE(TypeOf(call), nullptr);
-  EXPECT_TRUE(TypeOf(call)->Is<sem::Vector>());
-  EXPECT_TRUE(TypeOf(call)->As<sem::Vector>()->type()->Is<sem::F32>());
-}
-
 TEST_F(ResolverIntrinsicDataTest, ModfScalar) {
   auto* call = Call("modf", 1.0f);
   WrapInFunction(call);
@@ -1082,9 +1028,7 @@
       r()->error(),
       R"(error: no matching call to modf(i32, ptr<workgroup, f32, read_write>)
 
-4 candidate functions:
-  modf(f32, ptr<S, f32, A>) -> f32  where: S is function, private or workgroup
-  modf(vecN<f32>, ptr<S, vecN<f32>, A>) -> vecN<f32>  where: S is function, private or workgroup
+2 candidate functions:
   modf(f32) -> _modf_result
   modf(vecN<f32>) -> _modf_result_vecN
 )");
@@ -1101,10 +1045,8 @@
       r()->error(),
       R"(error: no matching call to modf(f32, ptr<workgroup, i32, read_write>)
 
-4 candidate functions:
-  modf(f32, ptr<S, f32, A>) -> f32  where: S is function, private or workgroup
+2 candidate functions:
   modf(f32) -> _modf_result
-  modf(vecN<f32>, ptr<S, vecN<f32>, A>) -> vecN<f32>  where: S is function, private or workgroup
   modf(vecN<f32>) -> _modf_result_vecN
 )");
 }
@@ -1117,10 +1059,8 @@
 
   EXPECT_EQ(r()->error(), R"(error: no matching call to modf(f32, f32)
 
-4 candidate functions:
-  modf(f32, ptr<S, f32, A>) -> f32  where: S is function, private or workgroup
+2 candidate functions:
   modf(f32) -> _modf_result
-  modf(vecN<f32>, ptr<S, vecN<f32>, A>) -> vecN<f32>  where: S is function, private or workgroup
   modf(vecN<f32>) -> _modf_result_vecN
 )");
 }
@@ -1136,10 +1076,8 @@
       r()->error(),
       R"(error: no matching call to modf(vec2<f32>, ptr<workgroup, vec4<f32>, read_write>)
 
-4 candidate functions:
-  modf(vecN<f32>, ptr<S, vecN<f32>, A>) -> vecN<f32>  where: S is function, private or workgroup
+2 candidate functions:
   modf(vecN<f32>) -> _modf_result_vecN
-  modf(f32, ptr<S, f32, A>) -> f32  where: S is function, private or workgroup
   modf(f32) -> _modf_result
 )");
 }
diff --git a/src/writer/glsl/generator_impl_intrinsic_test.cc b/src/writer/glsl/generator_impl_intrinsic_test.cc
index 646357d..6d1c392 100644
--- a/src/writer/glsl/generator_impl_intrinsic_test.cc
+++ b/src/writer/glsl/generator_impl_intrinsic_test.cc
@@ -297,6 +297,7 @@
   EXPECT_EQ(out.str(), "(bvec2(true, false) ? ivec2(3, 4) : ivec2(1, 2))");
 }
 
+#if 0
 TEST_F(GlslGeneratorImplTest_Intrinsic, Modf_Scalar) {
   auto* res = Var("res", ty.f32());
   auto* call = Call("modf", 1.0f, AddressOf(res));
@@ -319,7 +320,6 @@
   EXPECT_THAT(gen.result(), HasSubstr("modf(vec3(0.0f, 0.0f, 0.0f), res)"));
 }
 
-#if 0
 TEST_F(GlslGeneratorImplTest_Intrinsic, Frexp_Scalar_i32) {
   auto* exp = Var("exp", ty.i32());
   auto* call = Call("frexp", 1.0f, AddressOf(exp));
diff --git a/src/writer/hlsl/generator_impl.cc b/src/writer/hlsl/generator_impl.cc
index 94e5de5..44d44b3 100644
--- a/src/writer/hlsl/generator_impl.cc
+++ b/src/writer/hlsl/generator_impl.cc
@@ -1366,120 +1366,71 @@
 bool GeneratorImpl::EmitModfCall(std::ostream& out,
                                  ast::CallExpression* expr,
                                  const sem::Intrinsic* intrinsic) {
-  if (expr->params().size() == 1) {
-    return CallIntrinsicHelper(
-        out, expr, intrinsic,
-        [&](TextBuffer* b, const std::vector<std::string>& params) {
-          auto* ty = intrinsic->Parameters()[0]->Type();
-          auto in = params[0];
+  return CallIntrinsicHelper(
+      out, expr, intrinsic,
+      [&](TextBuffer* b, const std::vector<std::string>& params) {
+        auto* ty = intrinsic->Parameters()[0]->Type();
+        auto in = params[0];
 
-          std::string width;
-          if (auto* vec = ty->As<sem::Vector>()) {
-            width = std::to_string(vec->Width());
-          }
+        std::string width;
+        if (auto* vec = ty->As<sem::Vector>()) {
+          width = std::to_string(vec->Width());
+        }
 
-          // Emit the builtin return type unique to this overload. This does not
-          // exist in the AST, so it will not be generated in Generate().
-          if (!EmitStructType(&helpers_,
-                              intrinsic->ReturnType()->As<sem::Struct>())) {
+        // Emit the builtin return type unique to this overload. This does not
+        // exist in the AST, so it will not be generated in Generate().
+        if (!EmitStructType(&helpers_,
+                            intrinsic->ReturnType()->As<sem::Struct>())) {
+          return false;
+        }
+
+        line(b) << "float" << width << " whole;";
+        line(b) << "float" << width << " fract = modf(" << in << ", whole);";
+        {
+          auto l = line(b);
+          if (!EmitType(l, intrinsic->ReturnType(), ast::StorageClass::kNone,
+                        ast::Access::kUndefined, "")) {
             return false;
           }
-
-          line(b) << "float" << width << " whole;";
-          line(b) << "float" << width << " fract = modf(" << in << ", whole);";
-          {
-            auto l = line(b);
-            if (!EmitType(l, intrinsic->ReturnType(), ast::StorageClass::kNone,
-                          ast::Access::kUndefined, "")) {
-              return false;
-            }
-            l << " result = {fract, whole};";
-          }
-          line(b) << "return result;";
-          return true;
-        });
-  }
-
-  // DEPRECATED
-  out << "modf";
-  ScopedParen sp(out);
-  if (!EmitExpression(out, expr->params()[0])) {
-    return false;
-  }
-  out << ", ";
-  if (!EmitExpression(out, expr->params()[1])) {
-    return false;
-  }
-  return true;
+          l << " result = {fract, whole};";
+        }
+        line(b) << "return result;";
+        return true;
+      });
 }
 
 bool GeneratorImpl::EmitFrexpCall(std::ostream& out,
                                   ast::CallExpression* expr,
                                   const sem::Intrinsic* intrinsic) {
-  if (expr->params().size() == 1) {
-    return CallIntrinsicHelper(
-        out, expr, intrinsic,
-        [&](TextBuffer* b, const std::vector<std::string>& params) {
-          auto* ty = intrinsic->Parameters()[0]->Type();
-          auto in = params[0];
-
-          std::string width;
-          if (auto* vec = ty->As<sem::Vector>()) {
-            width = std::to_string(vec->Width());
-          }
-
-          // Emit the builtin return type unique to this overload. This does not
-          // exist in the AST, so it will not be generated in Generate().
-          if (!EmitStructType(&helpers_,
-                              intrinsic->ReturnType()->As<sem::Struct>())) {
-            return false;
-          }
-
-          line(b) << "float" << width << " exp;";
-          line(b) << "float" << width << " sig = frexp(" << in << ", exp);";
-          {
-            auto l = line(b);
-            if (!EmitType(l, intrinsic->ReturnType(), ast::StorageClass::kNone,
-                          ast::Access::kUndefined, "")) {
-              return false;
-            }
-            l << " result = {sig, int" << width << "(exp)};";
-          }
-          line(b) << "return result;";
-          return true;
-        });
-  }
-  // DEPRECATED
-  // Exponent is an integer in WGSL, but HLSL wants a float.
-  // We need to make the call with a temporary float, and then cast.
   return CallIntrinsicHelper(
       out, expr, intrinsic,
       [&](TextBuffer* b, const std::vector<std::string>& params) {
-        auto* significand_ty = intrinsic->Parameters()[0]->Type();
-        auto significand = params[0];
-        auto* exponent_ty = intrinsic->Parameters()[1]->Type();
-        auto exponent = params[1];
+        auto* ty = intrinsic->Parameters()[0]->Type();
+        auto in = params[0];
 
         std::string width;
-        if (auto* vec = significand_ty->As<sem::Vector>()) {
+        if (auto* vec = ty->As<sem::Vector>()) {
           width = std::to_string(vec->Width());
         }
 
-        // Exponent is an integer, which HLSL does not have an overload for.
-        // We need to cast from a float.
-        line(b) << "float" << width << " float_exp;";
-        line(b) << "float" << width << " significand = frexp(" << significand
-                << ", float_exp);";
+        // Emit the builtin return type unique to this overload. This does not
+        // exist in the AST, so it will not be generated in Generate().
+        if (!EmitStructType(&helpers_,
+                            intrinsic->ReturnType()->As<sem::Struct>())) {
+          return false;
+        }
+
+        line(b) << "float" << width << " exp;";
+        line(b) << "float" << width << " sig = frexp(" << in << ", exp);";
         {
           auto l = line(b);
-          l << exponent << " = ";
-          if (!EmitType(l, exponent_ty->UnwrapPtr(), ast::StorageClass::kNone,
+          if (!EmitType(l, intrinsic->ReturnType(), ast::StorageClass::kNone,
                         ast::Access::kUndefined, "")) {
             return false;
           }
-          l << "(float_exp);";
+          l << " result = {sig, int" << width << "(exp)};";
         }
-        line(b) << "return significand;";
+        line(b) << "return result;";
         return true;
       });
 }
diff --git a/src/writer/hlsl/generator_impl_intrinsic_test.cc b/src/writer/hlsl/generator_impl_intrinsic_test.cc
index c052873..1603561 100644
--- a/src/writer/hlsl/generator_impl_intrinsic_test.cc
+++ b/src/writer/hlsl/generator_impl_intrinsic_test.cc
@@ -298,72 +298,104 @@
 }
 
 TEST_F(HlslGeneratorImplTest_Intrinsic, Modf_Scalar) {
-  auto* res = Var("res", ty.f32());
-  auto* call = Call("modf", 1.0f, AddressOf(res));
-  WrapInFunction(res, call);
+  auto* call = Call("modf", 1.0f);
+  WrapInFunction(call);
 
   GeneratorImpl& gen = SanitizeAndBuild();
 
   ASSERT_TRUE(gen.Generate()) << gen.error();
-  EXPECT_THAT(gen.result(), HasSubstr("modf(1.0f, res)"));
-}
-
-TEST_F(HlslGeneratorImplTest_Intrinsic, Modf_Vector) {
-  auto* res = Var("res", ty.vec3<f32>());
-  auto* call = Call("modf", vec3<f32>(), AddressOf(res));
-  WrapInFunction(res, call);
-
-  GeneratorImpl& gen = SanitizeAndBuild();
-
-  ASSERT_TRUE(gen.Generate()) << gen.error();
-  EXPECT_THAT(gen.result(), HasSubstr("modf(float3(0.0f, 0.0f, 0.0f), res)"));
-}
-
-TEST_F(HlslGeneratorImplTest_Intrinsic, Frexp_Scalar_i32) {
-  auto* exp = Var("exp", ty.i32());
-  auto* call = Call("frexp", 1.0f, AddressOf(exp));
-  WrapInFunction(exp, call);
-
-  GeneratorImpl& gen = SanitizeAndBuild();
-
-  ASSERT_TRUE(gen.Generate()) << gen.error();
-  EXPECT_EQ(gen.result(),
-            R"(float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
+  EXPECT_EQ(gen.result(), R"(struct modf_result {
+  float fract;
+  float whole;
+};
+modf_result tint_modf(float param_0) {
+  float whole;
+  float fract = modf(param_0, whole);
+  modf_result result = {fract, whole};
+  return result;
 }
 
 [numthreads(1, 1, 1)]
 void test_function() {
-  int exp = 0;
-  tint_frexp(1.0f, exp);
+  tint_modf(1.0f);
+  return;
+}
+)");
+}
+
+TEST_F(HlslGeneratorImplTest_Intrinsic, Modf_Vector) {
+  auto* call = Call("modf", vec3<f32>());
+  WrapInFunction(call);
+
+  GeneratorImpl& gen = SanitizeAndBuild();
+
+  ASSERT_TRUE(gen.Generate()) << gen.error();
+  EXPECT_EQ(gen.result(), R"(struct modf_result_vec3 {
+  float3 fract;
+  float3 whole;
+};
+modf_result_vec3 tint_modf(float3 param_0) {
+  float3 whole;
+  float3 fract = modf(param_0, whole);
+  modf_result_vec3 result = {fract, whole};
+  return result;
+}
+
+[numthreads(1, 1, 1)]
+void test_function() {
+  tint_modf(float3(0.0f, 0.0f, 0.0f));
+  return;
+}
+)");
+}
+
+TEST_F(HlslGeneratorImplTest_Intrinsic, Frexp_Scalar_i32) {
+  auto* call = Call("frexp", 1.0f);
+  WrapInFunction(call);
+
+  GeneratorImpl& gen = SanitizeAndBuild();
+
+  ASSERT_TRUE(gen.Generate()) << gen.error();
+  EXPECT_EQ(gen.result(), R"(struct frexp_result {
+  float sig;
+  int exp;
+};
+frexp_result tint_frexp(float param_0) {
+  float exp;
+  float sig = frexp(param_0, exp);
+  frexp_result result = {sig, int(exp)};
+  return result;
+}
+
+[numthreads(1, 1, 1)]
+void test_function() {
+  tint_frexp(1.0f);
   return;
 }
 )");
 }
 
 TEST_F(HlslGeneratorImplTest_Intrinsic, Frexp_Vector_i32) {
-  auto* res = Var("res", ty.vec3<i32>());
-  auto* call = Call("frexp", vec3<f32>(), AddressOf(res));
-  WrapInFunction(res, call);
+  auto* call = Call("frexp", vec3<f32>());
+  WrapInFunction(call);
 
   GeneratorImpl& gen = SanitizeAndBuild();
 
   ASSERT_TRUE(gen.Generate()) << gen.error();
-  EXPECT_EQ(gen.result(),
-            R"(float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
+  EXPECT_EQ(gen.result(), R"(struct frexp_result_vec3 {
+  float3 sig;
+  int3 exp;
+};
+frexp_result_vec3 tint_frexp(float3 param_0) {
+  float3 exp;
+  float3 sig = frexp(param_0, exp);
+  frexp_result_vec3 result = {sig, int3(exp)};
+  return result;
 }
 
 [numthreads(1, 1, 1)]
 void test_function() {
-  int3 res = int3(0, 0, 0);
-  tint_frexp(float3(0.0f, 0.0f, 0.0f), res);
+  tint_frexp(float3(0.0f, 0.0f, 0.0f));
   return;
 }
 )");
diff --git a/src/writer/msl/generator_impl.cc b/src/writer/msl/generator_impl.cc
index 10d9620..d3d6c16 100644
--- a/src/writer/msl/generator_impl.cc
+++ b/src/writer/msl/generator_impl.cc
@@ -1034,48 +1034,27 @@
 bool GeneratorImpl::EmitModfCall(std::ostream& out,
                                  ast::CallExpression* expr,
                                  const sem::Intrinsic* intrinsic) {
-  if (expr->params().size() == 1) {
-    return CallIntrinsicHelper(
-        out, expr, intrinsic,
-        [&](TextBuffer* b, const std::vector<std::string>& params) {
-          auto* ty = intrinsic->Parameters()[0]->Type();
-          auto in = params[0];
-
-          std::string width;
-          if (auto* vec = ty->As<sem::Vector>()) {
-            width = std::to_string(vec->Width());
-          }
-
-          // Emit the builtin return type unique to this overload. This does not
-          // exist in the AST, so it will not be generated in Generate().
-          if (!EmitStructType(&helpers_,
-                              intrinsic->ReturnType()->As<sem::Struct>())) {
-            return false;
-          }
-
-          line(b) << "float" << width << " whole;";
-          line(b) << "float" << width << " fract = modf(" << in << ", whole);";
-          line(b) << "return {fract, whole};";
-          return true;
-        });
-  }
-  // DEPRECATED
   return CallIntrinsicHelper(
       out, expr, intrinsic,
       [&](TextBuffer* b, const std::vector<std::string>& params) {
         auto* ty = intrinsic->Parameters()[0]->Type();
         auto in = params[0];
-        auto out_whole = params[1];
 
         std::string width;
         if (auto* vec = ty->As<sem::Vector>()) {
           width = std::to_string(vec->Width());
         }
 
+        // Emit the builtin return type unique to this overload. This does not
+        // exist in the AST, so it will not be generated in Generate().
+        if (!EmitStructType(&helpers_,
+                            intrinsic->ReturnType()->As<sem::Struct>())) {
+          return false;
+        }
+
         line(b) << "float" << width << " whole;";
         line(b) << "float" << width << " fract = modf(" << in << ", whole);";
-        line(b) << "*" << out_whole << " = whole;";
-        line(b) << "return fract;";
+        line(b) << "return {fract, whole};";
         return true;
       });
 }
@@ -1083,49 +1062,27 @@
 bool GeneratorImpl::EmitFrexpCall(std::ostream& out,
                                   ast::CallExpression* expr,
                                   const sem::Intrinsic* intrinsic) {
-  if (expr->params().size() == 1) {
-    return CallIntrinsicHelper(
-        out, expr, intrinsic,
-        [&](TextBuffer* b, const std::vector<std::string>& params) {
-          auto* ty = intrinsic->Parameters()[0]->Type();
-          auto in = params[0];
-
-          std::string width;
-          if (auto* vec = ty->As<sem::Vector>()) {
-            width = std::to_string(vec->Width());
-          }
-
-          // Emit the builtin return type unique to this overload. This does not
-          // exist in the AST, so it will not be generated in Generate().
-          if (!EmitStructType(&helpers_,
-                              intrinsic->ReturnType()->As<sem::Struct>())) {
-            return false;
-          }
-
-          line(b) << "int" << width << " exp;";
-          line(b) << "float" << width << " sig = frexp(" << in << ", exp);";
-          line(b) << "return {sig, exp};";
-          return true;
-        });
-  }
-
-  // DEPRECATED
   return CallIntrinsicHelper(
       out, expr, intrinsic,
       [&](TextBuffer* b, const std::vector<std::string>& params) {
         auto* ty = intrinsic->Parameters()[0]->Type();
         auto in = params[0];
-        auto out_exp = params[1];
 
         std::string width;
         if (auto* vec = ty->As<sem::Vector>()) {
           width = std::to_string(vec->Width());
         }
 
+        // Emit the builtin return type unique to this overload. This does not
+        // exist in the AST, so it will not be generated in Generate().
+        if (!EmitStructType(&helpers_,
+                            intrinsic->ReturnType()->As<sem::Struct>())) {
+          return false;
+        }
+
         line(b) << "int" << width << " exp;";
         line(b) << "float" << width << " sig = frexp(" << in << ", exp);";
-        line(b) << "*" << out_exp << " = exp;";
-        line(b) << "return sig;";
+        line(b) << "return {sig, exp};";
         return true;
       });
 }
diff --git a/src/writer/spirv/builder.cc b/src/writer/spirv/builder.cc
index cba0438..140e1dc 100644
--- a/src/writer/spirv/builder.cc
+++ b/src/writer/spirv/builder.cc
@@ -165,8 +165,7 @@
     case IntrinsicType::kFract:
       return GLSLstd450Fract;
     case IntrinsicType::kFrexp:
-      return (intrinsic->Parameters().size() == 1) ? GLSLstd450FrexpStruct
-                                                   : GLSLstd450Frexp;
+      return GLSLstd450FrexpStruct;
     case IntrinsicType::kInverseSqrt:
       return GLSLstd450InverseSqrt;
     case IntrinsicType::kLdexp:
@@ -196,8 +195,7 @@
     case IntrinsicType::kMix:
       return GLSLstd450FMix;
     case IntrinsicType::kModf:
-      return (intrinsic->Parameters().size() == 1) ? GLSLstd450ModfStruct
-                                                   : GLSLstd450Modf;
+      return GLSLstd450ModfStruct;
     case IntrinsicType::kNormalize:
       return GLSLstd450Normalize;
     case IntrinsicType::kPack4x8snorm:
diff --git a/src/writer/spirv/builder_intrinsic_test.cc b/src/writer/spirv/builder_intrinsic_test.cc
index 2a11dfd..4a9795d 100644
--- a/src/writer/spirv/builder_intrinsic_test.cc
+++ b/src/writer/spirv/builder_intrinsic_test.cc
@@ -1452,16 +1452,48 @@
                          testing::Values(IntrinsicData{"clamp", "UClamp"}));
 
 TEST_F(IntrinsicBuilderTest, Call_Modf) {
-  auto* out = Var("out", ty.vec2<f32>());
-  auto* expr = Call("modf", vec2<f32>(1.0f, 2.0f), AddressOf("out"));
-  Func("a_func", ast::VariableList{}, ty.void_(),
-       ast::StatementList{
-           Decl(out),
-           Ignore(expr),
-       },
-       ast::DecorationList{
-           Stage(ast::PipelineStage::kFragment),
-       });
+  auto* expr = Call("modf", vec2<f32>(1.0f, 2.0f));
+  Func("a_func", {}, ty.void_(), {Ignore(expr)},
+       {Stage(ast::PipelineStage::kFragment)});
+
+  spirv::Builder& b = Build();
+
+  ASSERT_TRUE(b.Build()) << b.error();
+  auto got = DumpBuilder(b);
+  auto* expect = R"(OpCapability Shader
+%10 = OpExtInstImport "GLSL.std.450"
+OpMemoryModel Logical GLSL450
+OpEntryPoint Fragment %3 "a_func"
+OpExecutionMode %3 OriginUpperLeft
+OpName %3 "a_func"
+OpName %7 "_modf_result_vec2"
+OpMemberName %7 0 "fract"
+OpMemberName %7 1 "whole"
+OpMemberDecorate %7 0 Offset 0
+OpMemberDecorate %7 1 Offset 8
+%2 = OpTypeVoid
+%1 = OpTypeFunction %2
+%9 = OpTypeFloat 32
+%8 = OpTypeVector %9 2
+%7 = OpTypeStruct %8 %8
+%11 = OpConstant %9 1
+%12 = OpConstant %9 2
+%13 = OpConstantComposite %8 %11 %12
+%3 = OpFunction %2 None %1
+%4 = OpLabel
+%6 = OpExtInst %7 %10 ModfStruct %13
+OpReturn
+OpFunctionEnd
+)";
+  EXPECT_EQ(expect, got);
+
+  Validate(b);
+}
+
+TEST_F(IntrinsicBuilderTest, Call_Frexp) {
+  auto* expr = Call("frexp", vec2<f32>(1.0f, 2.0f));
+  Func("a_func", {}, ty.void_(), {Ignore(expr)},
+       {Stage(ast::PipelineStage::kFragment)});
 
   spirv::Builder& b = Build();
 
@@ -1473,66 +1505,24 @@
 OpEntryPoint Fragment %3 "a_func"
 OpExecutionMode %3 OriginUpperLeft
 OpName %3 "a_func"
-OpName %5 "out"
+OpName %7 "_frexp_result_vec2"
+OpMemberName %7 0 "sig"
+OpMemberName %7 1 "exp"
+OpMemberDecorate %7 0 Offset 0
+OpMemberDecorate %7 1 Offset 8
 %2 = OpTypeVoid
 %1 = OpTypeFunction %2
-%8 = OpTypeFloat 32
-%7 = OpTypeVector %8 2
-%6 = OpTypePointer Function %7
-%9 = OpConstantNull %7
-%13 = OpConstant %8 1
-%14 = OpConstant %8 2
-%15 = OpConstantComposite %7 %13 %14
+%9 = OpTypeFloat 32
+%8 = OpTypeVector %9 2
+%11 = OpTypeInt 32 1
+%10 = OpTypeVector %11 2
+%7 = OpTypeStruct %8 %10
+%13 = OpConstant %9 1
+%14 = OpConstant %9 2
+%15 = OpConstantComposite %8 %13 %14
 %3 = OpFunction %2 None %1
 %4 = OpLabel
-%5 = OpVariable %6 Function %9
-%11 = OpExtInst %7 %12 Modf %15 %5
-OpReturn
-OpFunctionEnd
-)";
-  EXPECT_EQ(expect, got);
-
-  Validate(b);
-}
-
-TEST_F(IntrinsicBuilderTest, Call_Frexp) {
-  auto* out = Var("out", ty.vec2<i32>());
-  auto* expr = Call("frexp", vec2<f32>(1.0f, 2.0f), AddressOf("out"));
-  Func("a_func", ast::VariableList{}, ty.void_(),
-       ast::StatementList{
-           Decl(out),
-           Ignore(expr),
-       },
-       ast::DecorationList{
-           Stage(ast::PipelineStage::kFragment),
-       });
-
-  spirv::Builder& b = Build();
-
-  ASSERT_TRUE(b.Build()) << b.error();
-  auto got = DumpBuilder(b);
-  auto* expect = R"(OpCapability Shader
-%14 = OpExtInstImport "GLSL.std.450"
-OpMemoryModel Logical GLSL450
-OpEntryPoint Fragment %3 "a_func"
-OpExecutionMode %3 OriginUpperLeft
-OpName %3 "a_func"
-OpName %5 "out"
-%2 = OpTypeVoid
-%1 = OpTypeFunction %2
-%8 = OpTypeInt 32 1
-%7 = OpTypeVector %8 2
-%6 = OpTypePointer Function %7
-%9 = OpConstantNull %7
-%13 = OpTypeFloat 32
-%12 = OpTypeVector %13 2
-%15 = OpConstant %13 1
-%16 = OpConstant %13 2
-%17 = OpConstantComposite %12 %15 %16
-%3 = OpFunction %2 None %1
-%4 = OpLabel
-%5 = OpVariable %6 Function %9
-%11 = OpExtInst %12 %14 Frexp %17 %5
+%6 = OpExtInst %7 %12 FrexpStruct %15
 OpReturn
 OpFunctionEnd
 )";
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl b/test/intrinsics/gen/frexp/013caa.wgsl
deleted file mode 100644
index 8845b1e..0000000
--- a/test/intrinsics/gen/frexp/013caa.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<4, f32>, ptr<function, vec<4, i32>, write>) -> vec<4, f32>
-fn frexp_013caa() {
-  var arg_1: vec4<i32>;
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_013caa();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_013caa();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_013caa();
-}
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/013caa.wgsl.expected.hlsl
deleted file mode 100644
index fe14b50..0000000
--- a/test/intrinsics/gen/frexp/013caa.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/013caa.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-float4 tint_frexp(float4 param_0, inout int4 param_1) {
-  float4 float_exp;
-  float4 significand = frexp(param_0, float_exp);
-  param_1 = int4(float_exp);
-  return significand;
-}
-
-void frexp_013caa() {
-  int4 arg_1 = int4(0, 0, 0, 0);
-  float4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_013caa();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_013caa();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_013caa();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl.expected.msl b/test/intrinsics/gen/frexp/013caa.wgsl.expected.msl
deleted file mode 100644
index 7548afc..0000000
--- a/test/intrinsics/gen/frexp/013caa.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/013caa.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_frexp(float4 param_0, thread int4* param_1) {
-  int4 exp;
-  float4 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_013caa() {
-  int4 arg_1 = 0;
-  float4 res = tint_frexp(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_013caa();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_013caa();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_013caa();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm
deleted file mode 100644
index 9c3235d..0000000
--- a/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm
+++ /dev/null
@@ -1,75 +0,0 @@
-intrinsics/gen/frexp/013caa.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 37
-; Schema: 0
-               OpCapability Shader
-         %19 = 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 %frexp_013caa "frexp_013caa"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v4int = OpTypeVector %int 4
-%_ptr_Function_v4int = OpTypePointer Function %v4int
-         %17 = OpConstantNull %v4int
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %23 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_013caa = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4int Function %17
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_013caa
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %frexp_013caa
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %35 = OpLabel
-         %36 = OpFunctionCall %void %frexp_013caa
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/013caa.wgsl.expected.wgsl
deleted file mode 100644
index 0fccee6..0000000
--- a/test/intrinsics/gen/frexp/013caa.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/013caa.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_013caa() {
-  var arg_1 : vec4<i32>;
-  var res : vec4<f32> = frexp(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_013caa();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_013caa();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_013caa();
-}
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl b/test/intrinsics/gen/frexp/0da285.wgsl
deleted file mode 100644
index bdbe0b7..0000000
--- a/test/intrinsics/gen/frexp/0da285.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: i32;
-
-// fn frexp(f32, ptr<workgroup, i32, read_write>) -> f32
-fn frexp_0da285() {
-  var res: f32 = frexp(1.0, &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_0da285();
-}
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/0da285.wgsl.expected.hlsl
deleted file mode 100644
index db4e43a..0000000
--- a/test/intrinsics/gen/frexp/0da285.wgsl.expected.hlsl
+++ /dev/null
@@ -1,34 +0,0 @@
-intrinsics/gen/frexp/0da285.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
-}
-
-groupshared int arg_1;
-
-void frexp_0da285() {
-  float res = tint_frexp(1.0f, arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = 0;
-  }
-  GroupMemoryBarrierWithGroupSync();
-  frexp_0da285();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl.expected.msl b/test/intrinsics/gen/frexp/0da285.wgsl.expected.msl
deleted file mode 100644
index a87b780..0000000
--- a/test/intrinsics/gen/frexp/0da285.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/frexp/0da285.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_frexp(float param_0, threadgroup int* param_1) {
-  int exp;
-  float sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-void frexp_0da285(threadgroup int* const tint_symbol) {
-  float res = tint_frexp(1.0f, tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup int* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = int();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  frexp_0da285(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup int tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm
deleted file mode 100644
index 167f6f0..0000000
--- a/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm
+++ /dev/null
@@ -1,59 +0,0 @@
-intrinsics/gen/frexp/0da285.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 32
-; Schema: 0
-               OpCapability Shader
-         %13 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %frexp_0da285 "frexp_0da285"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-        %int = OpTypeInt 32 1
-%_ptr_Workgroup_int = OpTypePointer Workgroup %int
-      %arg_1 = OpVariable %_ptr_Workgroup_int Workgroup
-       %void = OpTypeVoid
-          %7 = OpTypeFunction %void
-      %float = OpTypeFloat 32
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %18 = OpConstantNull %float
-         %19 = OpTypeFunction %void %uint
-         %23 = OpConstantNull %int
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%frexp_0da285 = OpFunction %void None %7
-         %10 = OpLabel
-        %res = OpVariable %_ptr_Function_float Function %18
-         %11 = OpExtInst %float %13 Frexp %float_1 %arg_1
-               OpStore %res %11
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %19
-%local_invocation_index = OpFunctionParameter %uint
-         %22 = OpLabel
-               OpStore %arg_1 %23
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %27 = OpFunctionCall %void %frexp_0da285
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %7
-         %29 = OpLabel
-         %31 = OpLoad %uint %local_invocation_index_1
-         %30 = OpFunctionCall %void %compute_main_inner %31
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/0da285.wgsl.expected.wgsl
deleted file mode 100644
index d66ac56..0000000
--- a/test/intrinsics/gen/frexp/0da285.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/frexp/0da285.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-var<workgroup> arg_1 : i32;
-
-fn frexp_0da285() {
-  var res : f32 = frexp(1.0, &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_0da285();
-}
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl b/test/intrinsics/gen/frexp/15edf3.wgsl
deleted file mode 100644
index 872cf8a..0000000
--- a/test/intrinsics/gen/frexp/15edf3.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<2, f32>, ptr<function, vec<2, i32>, read_write>) -> vec<2, f32>
-fn frexp_15edf3() {
-  var arg_1: vec2<i32>;
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_15edf3();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_15edf3();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_15edf3();
-}
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.hlsl
deleted file mode 100644
index 1addf38..0000000
--- a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/15edf3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-float2 tint_frexp(float2 param_0, inout int2 param_1) {
-  float2 float_exp;
-  float2 significand = frexp(param_0, float_exp);
-  param_1 = int2(float_exp);
-  return significand;
-}
-
-void frexp_15edf3() {
-  int2 arg_1 = int2(0, 0);
-  float2 res = tint_frexp(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_15edf3();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_15edf3();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_15edf3();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.msl b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.msl
deleted file mode 100644
index 930f7c6..0000000
--- a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/15edf3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_frexp(float2 param_0, thread int2* param_1) {
-  int2 exp;
-  float2 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_15edf3() {
-  int2 arg_1 = 0;
-  float2 res = tint_frexp(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_15edf3();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_15edf3();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_15edf3();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm
deleted file mode 100644
index b0a95f7..0000000
--- a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/15edf3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_15edf3 "frexp_15edf3"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v2int = OpTypeVector %int 2
-%_ptr_Function_v2int = OpTypePointer Function %v2int
-         %17 = OpConstantNull %v2int
-    %v2float = OpTypeVector %float 2
-         %21 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_15edf3 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2int Function %17
-        %res = OpVariable %_ptr_Function_v2float Function %21
-         %18 = OpExtInst %v2float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_15edf3
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_15edf3
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_15edf3
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.wgsl
deleted file mode 100644
index 66dc841..0000000
--- a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/15edf3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_15edf3() {
-  var arg_1 : vec2<i32>;
-  var res : vec2<f32> = frexp(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_15edf3();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_15edf3();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_15edf3();
-}
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl b/test/intrinsics/gen/frexp/19ab15.wgsl
deleted file mode 100644
index 29b0371..0000000
--- a/test/intrinsics/gen/frexp/19ab15.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<4, f32>, ptr<function, vec<4, i32>, read_write>) -> vec<4, f32>
-fn frexp_19ab15() {
-  var arg_1: vec4<i32>;
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_19ab15();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_19ab15();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_19ab15();
-}
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.hlsl
deleted file mode 100644
index 10ee0c9..0000000
--- a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/19ab15.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-float4 tint_frexp(float4 param_0, inout int4 param_1) {
-  float4 float_exp;
-  float4 significand = frexp(param_0, float_exp);
-  param_1 = int4(float_exp);
-  return significand;
-}
-
-void frexp_19ab15() {
-  int4 arg_1 = int4(0, 0, 0, 0);
-  float4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_19ab15();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_19ab15();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_19ab15();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.msl b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.msl
deleted file mode 100644
index 31ca96b..0000000
--- a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/19ab15.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_frexp(float4 param_0, thread int4* param_1) {
-  int4 exp;
-  float4 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_19ab15() {
-  int4 arg_1 = 0;
-  float4 res = tint_frexp(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_19ab15();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_19ab15();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_19ab15();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm
deleted file mode 100644
index 1cc26d0..0000000
--- a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm
+++ /dev/null
@@ -1,75 +0,0 @@
-intrinsics/gen/frexp/19ab15.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 37
-; Schema: 0
-               OpCapability Shader
-         %19 = 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 %frexp_19ab15 "frexp_19ab15"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v4int = OpTypeVector %int 4
-%_ptr_Function_v4int = OpTypePointer Function %v4int
-         %17 = OpConstantNull %v4int
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %23 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_19ab15 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4int Function %17
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_19ab15
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %frexp_19ab15
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %35 = OpLabel
-         %36 = OpFunctionCall %void %frexp_19ab15
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.wgsl
deleted file mode 100644
index 16cfe37..0000000
--- a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/19ab15.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_19ab15() {
-  var arg_1 : vec4<i32>;
-  var res : vec4<f32> = frexp(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_19ab15();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_19ab15();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_19ab15();
-}
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl b/test/intrinsics/gen/frexp/2052e9.wgsl
deleted file mode 100644
index f2dd642..0000000
--- a/test/intrinsics/gen/frexp/2052e9.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<4, f32>, ptr<function, vec<4, i32>, read>) -> vec<4, f32>
-fn frexp_2052e9() {
-  var arg_1: vec4<i32>;
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_2052e9();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_2052e9();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_2052e9();
-}
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.hlsl
deleted file mode 100644
index 27a65a0..0000000
--- a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/2052e9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-float4 tint_frexp(float4 param_0, inout int4 param_1) {
-  float4 float_exp;
-  float4 significand = frexp(param_0, float_exp);
-  param_1 = int4(float_exp);
-  return significand;
-}
-
-void frexp_2052e9() {
-  int4 arg_1 = int4(0, 0, 0, 0);
-  float4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_2052e9();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_2052e9();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_2052e9();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.msl b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.msl
deleted file mode 100644
index 169c048..0000000
--- a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/2052e9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_frexp(float4 param_0, thread int4* param_1) {
-  int4 exp;
-  float4 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_2052e9() {
-  int4 arg_1 = 0;
-  float4 res = tint_frexp(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_2052e9();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_2052e9();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_2052e9();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm
deleted file mode 100644
index 5dff382..0000000
--- a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm
+++ /dev/null
@@ -1,75 +0,0 @@
-intrinsics/gen/frexp/2052e9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 37
-; Schema: 0
-               OpCapability Shader
-         %19 = 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 %frexp_2052e9 "frexp_2052e9"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v4int = OpTypeVector %int 4
-%_ptr_Function_v4int = OpTypePointer Function %v4int
-         %17 = OpConstantNull %v4int
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %23 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_2052e9 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4int Function %17
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_2052e9
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %frexp_2052e9
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %35 = OpLabel
-         %36 = OpFunctionCall %void %frexp_2052e9
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.wgsl
deleted file mode 100644
index 48eb9c0..0000000
--- a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/2052e9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_2052e9() {
-  var arg_1 : vec4<i32>;
-  var res : vec4<f32> = frexp(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_2052e9();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_2052e9();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_2052e9();
-}
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl b/test/intrinsics/gen/frexp/40fc9b.wgsl
deleted file mode 100644
index 4b244c7..0000000
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec3<i32>;
-
-// fn frexp(vec<3, f32>, ptr<workgroup, vec<3, i32>, read_write>) -> vec<3, f32>
-fn frexp_40fc9b() {
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_40fc9b();
-}
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.hlsl
deleted file mode 100644
index e07da57..0000000
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.hlsl
+++ /dev/null
@@ -1,34 +0,0 @@
-intrinsics/gen/frexp/40fc9b.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
-}
-
-groupshared int3 arg_1;
-
-void frexp_40fc9b() {
-  float3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = int3(0, 0, 0);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  frexp_40fc9b();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.msl b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.msl
deleted file mode 100644
index a62b3dc..0000000
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/frexp/40fc9b.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_frexp(float3 param_0, threadgroup int3* param_1) {
-  int3 exp;
-  float3 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-void frexp_40fc9b(threadgroup int3* const tint_symbol) {
-  float3 res = tint_frexp(float3(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup int3* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = int3();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  frexp_40fc9b(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup int3 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm
deleted file mode 100644
index 6a51558..0000000
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm
+++ /dev/null
@@ -1,60 +0,0 @@
-intrinsics/gen/frexp/40fc9b.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %15 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %frexp_40fc9b "frexp_40fc9b"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-        %int = OpTypeInt 32 1
-      %v3int = OpTypeVector %int 3
-%_ptr_Workgroup_v3int = OpTypePointer Workgroup %v3int
-      %arg_1 = OpVariable %_ptr_Workgroup_v3int Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-      %float = OpTypeFloat 32
-    %v3float = OpTypeVector %float 3
-         %16 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %20 = OpTypeFunction %void %uint
-         %24 = OpConstantNull %v3int
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%frexp_40fc9b = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v3float Function %16
-         %12 = OpExtInst %v3float %15 Frexp %16 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %20
-%local_invocation_index = OpFunctionParameter %uint
-         %23 = OpLabel
-               OpStore %arg_1 %24
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %28 = OpFunctionCall %void %frexp_40fc9b
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %30 = OpLabel
-         %32 = OpLoad %uint %local_invocation_index_1
-         %31 = OpFunctionCall %void %compute_main_inner %32
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.wgsl
deleted file mode 100644
index 05b42fd..0000000
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/frexp/40fc9b.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-var<workgroup> arg_1 : vec3<i32>;
-
-fn frexp_40fc9b() {
-  var res : vec3<f32> = frexp(vec3<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_40fc9b();
-}
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl b/test/intrinsics/gen/frexp/41e931.wgsl
deleted file mode 100644
index da361ed..0000000
--- a/test/intrinsics/gen/frexp/41e931.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(f32, ptr<function, i32, read_write>) -> f32
-fn frexp_41e931() {
-  var arg_1: i32;
-  var res: f32 = frexp(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_41e931();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_41e931();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_41e931();
-}
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/41e931.wgsl.expected.hlsl
deleted file mode 100644
index 8227fdd..0000000
--- a/test/intrinsics/gen/frexp/41e931.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/41e931.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
-}
-
-void frexp_41e931() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_41e931();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_41e931();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_41e931();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl.expected.msl b/test/intrinsics/gen/frexp/41e931.wgsl.expected.msl
deleted file mode 100644
index c0b63f4..0000000
--- a/test/intrinsics/gen/frexp/41e931.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/41e931.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_frexp(float param_0, thread int* param_1) {
-  int exp;
-  float sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_41e931() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_41e931();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_41e931();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_41e931();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm
deleted file mode 100644
index 5445498..0000000
--- a/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/frexp/41e931.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %frexp_41e931 "frexp_41e931"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-%_ptr_Function_int = OpTypePointer Function %int
-         %16 = OpConstantNull %int
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %23 = OpTypeFunction %v4float
-%frexp_41e931 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_int Function %16
-        %res = OpVariable %_ptr_Function_float Function %8
-         %17 = OpExtInst %float %18 Frexp %float_1 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_41e931
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %frexp_41e931
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_41e931
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/41e931.wgsl.expected.wgsl
deleted file mode 100644
index afe0e12..0000000
--- a/test/intrinsics/gen/frexp/41e931.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/41e931.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-fn frexp_41e931() {
-  var arg_1 : i32;
-  var res : f32 = frexp(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_41e931();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_41e931();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_41e931();
-}
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl b/test/intrinsics/gen/frexp/481e59.wgsl
deleted file mode 100644
index db4ba30..0000000
--- a/test/intrinsics/gen/frexp/481e59.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(f32, ptr<function, i32, read>) -> f32
-fn frexp_481e59() {
-  var arg_1: i32;
-  var res: f32 = frexp(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_481e59();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_481e59();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_481e59();
-}
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/481e59.wgsl.expected.hlsl
deleted file mode 100644
index d58a5cb..0000000
--- a/test/intrinsics/gen/frexp/481e59.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/481e59.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
-}
-
-void frexp_481e59() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_481e59();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_481e59();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_481e59();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl.expected.msl b/test/intrinsics/gen/frexp/481e59.wgsl.expected.msl
deleted file mode 100644
index 73cf6da..0000000
--- a/test/intrinsics/gen/frexp/481e59.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/481e59.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_frexp(float param_0, thread int* param_1) {
-  int exp;
-  float sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_481e59() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_481e59();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_481e59();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_481e59();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm
deleted file mode 100644
index 82a4aaa..0000000
--- a/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/frexp/481e59.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %frexp_481e59 "frexp_481e59"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-%_ptr_Function_int = OpTypePointer Function %int
-         %16 = OpConstantNull %int
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %23 = OpTypeFunction %v4float
-%frexp_481e59 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_int Function %16
-        %res = OpVariable %_ptr_Function_float Function %8
-         %17 = OpExtInst %float %18 Frexp %float_1 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_481e59
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %frexp_481e59
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_481e59
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/481e59.wgsl.expected.wgsl
deleted file mode 100644
index e305a6d..0000000
--- a/test/intrinsics/gen/frexp/481e59.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/481e59.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-fn frexp_481e59() {
-  var arg_1 : i32;
-  var res : f32 = frexp(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_481e59();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_481e59();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_481e59();
-}
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl b/test/intrinsics/gen/frexp/5a141e.wgsl
deleted file mode 100644
index b48a2c9..0000000
--- a/test/intrinsics/gen/frexp/5a141e.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<3, f32>, ptr<function, vec<3, i32>, read>) -> vec<3, f32>
-fn frexp_5a141e() {
-  var arg_1: vec3<i32>;
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_5a141e();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_5a141e();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_5a141e();
-}
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.hlsl
deleted file mode 100644
index c22fce9..0000000
--- a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/5a141e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
-}
-
-void frexp_5a141e() {
-  int3 arg_1 = int3(0, 0, 0);
-  float3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_5a141e();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_5a141e();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_5a141e();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.msl b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.msl
deleted file mode 100644
index fdf9ae0..0000000
--- a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/5a141e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_frexp(float3 param_0, thread int3* param_1) {
-  int3 exp;
-  float3 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_5a141e() {
-  int3 arg_1 = 0;
-  float3 res = tint_frexp(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_5a141e();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_5a141e();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_5a141e();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm
deleted file mode 100644
index 042b1b9..0000000
--- a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/5a141e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_5a141e "frexp_5a141e"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v3int = OpTypeVector %int 3
-%_ptr_Function_v3int = OpTypePointer Function %v3int
-         %17 = OpConstantNull %v3int
-    %v3float = OpTypeVector %float 3
-         %21 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_5a141e = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3int Function %17
-        %res = OpVariable %_ptr_Function_v3float Function %21
-         %18 = OpExtInst %v3float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_5a141e
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_5a141e
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_5a141e
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.wgsl
deleted file mode 100644
index 697ee96..0000000
--- a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/5a141e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_5a141e() {
-  var arg_1 : vec3<i32>;
-  var res : vec3<f32> = frexp(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_5a141e();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_5a141e();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_5a141e();
-}
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl b/test/intrinsics/gen/frexp/6d0058.wgsl
deleted file mode 100644
index 2068e06..0000000
--- a/test/intrinsics/gen/frexp/6d0058.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<3, f32>, ptr<function, vec<3, i32>, read_write>) -> vec<3, f32>
-fn frexp_6d0058() {
-  var arg_1: vec3<i32>;
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_6d0058();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_6d0058();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_6d0058();
-}
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.hlsl
deleted file mode 100644
index 043f9b4..0000000
--- a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/6d0058.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
-}
-
-void frexp_6d0058() {
-  int3 arg_1 = int3(0, 0, 0);
-  float3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_6d0058();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_6d0058();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_6d0058();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.msl b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.msl
deleted file mode 100644
index 79b0346..0000000
--- a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/6d0058.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_frexp(float3 param_0, thread int3* param_1) {
-  int3 exp;
-  float3 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_6d0058() {
-  int3 arg_1 = 0;
-  float3 res = tint_frexp(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_6d0058();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_6d0058();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_6d0058();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm
deleted file mode 100644
index 7b9ca4e..0000000
--- a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/6d0058.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_6d0058 "frexp_6d0058"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v3int = OpTypeVector %int 3
-%_ptr_Function_v3int = OpTypePointer Function %v3int
-         %17 = OpConstantNull %v3int
-    %v3float = OpTypeVector %float 3
-         %21 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_6d0058 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3int Function %17
-        %res = OpVariable %_ptr_Function_v3float Function %21
-         %18 = OpExtInst %v3float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_6d0058
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_6d0058
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_6d0058
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.wgsl
deleted file mode 100644
index 336437e..0000000
--- a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/6d0058.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_6d0058() {
-  var arg_1 : vec3<i32>;
-  var res : vec3<f32> = frexp(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_6d0058();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_6d0058();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_6d0058();
-}
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl b/test/intrinsics/gen/frexp/6efa09.wgsl
deleted file mode 100644
index bcb4d72..0000000
--- a/test/intrinsics/gen/frexp/6efa09.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec3<i32>;
-
-// fn frexp(vec<3, f32>, ptr<private, vec<3, i32>, read_write>) -> vec<3, f32>
-fn frexp_6efa09() {
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_6efa09();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_6efa09();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_6efa09();
-}
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.hlsl
deleted file mode 100644
index 58f3af8..0000000
--- a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.hlsl
+++ /dev/null
@@ -1,43 +0,0 @@
-intrinsics/gen/frexp/6efa09.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
-}
-
-static int3 arg_1 = int3(0, 0, 0);
-
-void frexp_6efa09() {
-  float3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_6efa09();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_6efa09();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_6efa09();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.msl b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.msl
deleted file mode 100644
index 083b4b1..0000000
--- a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/frexp/6efa09.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_frexp(float3 param_0, thread int3* param_1) {
-  int3 exp;
-  float3 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_6efa09(thread int3* const tint_symbol_1) {
-  float3 res = tint_frexp(float3(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread int3* const tint_symbol_2) {
-  frexp_6efa09(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread int3 tint_symbol_3 = 0;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread int3 tint_symbol_4 = 0;
-  frexp_6efa09(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread int3 tint_symbol_5 = 0;
-  frexp_6efa09(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm
deleted file mode 100644
index de63a5e..0000000
--- a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/6efa09.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %arg_1 "arg_1"
-               OpName %frexp_6efa09 "frexp_6efa09"
-               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
-      %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
-        %int = OpTypeInt 32 1
-      %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
-         %13 = OpConstantNull %v3int
-      %arg_1 = OpVariable %_ptr_Private_v3int Private %13
-       %void = OpTypeVoid
-         %14 = OpTypeFunction %void
-    %v3float = OpTypeVector %float 3
-         %21 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_6efa09 = OpFunction %void None %14
-         %17 = OpLabel
-        %res = OpVariable %_ptr_Function_v3float Function %21
-         %18 = OpExtInst %v3float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_6efa09
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %14
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %14
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_6efa09
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %14
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_6efa09
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.wgsl
deleted file mode 100644
index 6605ee7..0000000
--- a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/frexp/6efa09.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-var<private> arg_1 : vec3<i32>;
-
-fn frexp_6efa09() {
-  var res : vec3<f32> = frexp(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_6efa09();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_6efa09();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_6efa09();
-}
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl b/test/intrinsics/gen/frexp/a2a617.wgsl
deleted file mode 100644
index 7fe4d1c..0000000
--- a/test/intrinsics/gen/frexp/a2a617.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: i32;
-
-// fn frexp(f32, ptr<private, i32, read_write>) -> f32
-fn frexp_a2a617() {
-  var res: f32 = frexp(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_a2a617();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_a2a617();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a2a617();
-}
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.hlsl
deleted file mode 100644
index 530aa26..0000000
--- a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.hlsl
+++ /dev/null
@@ -1,43 +0,0 @@
-intrinsics/gen/frexp/a2a617.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
-}
-
-static int arg_1 = 0;
-
-void frexp_a2a617() {
-  float res = tint_frexp(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_a2a617();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_a2a617();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_a2a617();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.msl b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.msl
deleted file mode 100644
index 2c2d8dd..0000000
--- a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/frexp/a2a617.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_frexp(float param_0, thread int* param_1) {
-  int exp;
-  float sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_a2a617(thread int* const tint_symbol_1) {
-  float res = tint_frexp(1.0f, tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread int* const tint_symbol_2) {
-  frexp_a2a617(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread int tint_symbol_3 = 0;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread int tint_symbol_4 = 0;
-  frexp_a2a617(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread int tint_symbol_5 = 0;
-  frexp_a2a617(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm
deleted file mode 100644
index 20c998b..0000000
--- a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/frexp/a2a617.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %arg_1 "arg_1"
-               OpName %frexp_a2a617 "frexp_a2a617"
-               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
-      %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
-        %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
-         %12 = OpConstantNull %int
-      %arg_1 = OpVariable %_ptr_Private_int Private %12
-       %void = OpTypeVoid
-         %13 = OpTypeFunction %void
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %23 = OpTypeFunction %v4float
-%frexp_a2a617 = OpFunction %void None %13
-         %16 = OpLabel
-        %res = OpVariable %_ptr_Function_float Function %8
-         %17 = OpExtInst %float %18 Frexp %float_1 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_a2a617
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %13
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %13
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %frexp_a2a617
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %13
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_a2a617
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.wgsl
deleted file mode 100644
index e5fdacd..0000000
--- a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/frexp/a2a617.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-var<private> arg_1 : i32;
-
-fn frexp_a2a617() {
-  var res : f32 = frexp(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_a2a617();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_a2a617();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a2a617();
-}
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl b/test/intrinsics/gen/frexp/a3f940.wgsl
deleted file mode 100644
index ff9c35f..0000000
--- a/test/intrinsics/gen/frexp/a3f940.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec2<i32>;
-
-// fn frexp(vec<2, f32>, ptr<workgroup, vec<2, i32>, read_write>) -> vec<2, f32>
-fn frexp_a3f940() {
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a3f940();
-}
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.hlsl
deleted file mode 100644
index 80b8ce4..0000000
--- a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.hlsl
+++ /dev/null
@@ -1,34 +0,0 @@
-intrinsics/gen/frexp/a3f940.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-float2 tint_frexp(float2 param_0, inout int2 param_1) {
-  float2 float_exp;
-  float2 significand = frexp(param_0, float_exp);
-  param_1 = int2(float_exp);
-  return significand;
-}
-
-groupshared int2 arg_1;
-
-void frexp_a3f940() {
-  float2 res = tint_frexp(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = int2(0, 0);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  frexp_a3f940();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.msl b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.msl
deleted file mode 100644
index 556bbbf..0000000
--- a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/frexp/a3f940.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_frexp(float2 param_0, threadgroup int2* param_1) {
-  int2 exp;
-  float2 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-void frexp_a3f940(threadgroup int2* const tint_symbol) {
-  float2 res = tint_frexp(float2(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup int2* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = int2();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  frexp_a3f940(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup int2 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm
deleted file mode 100644
index 7e33735..0000000
--- a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm
+++ /dev/null
@@ -1,60 +0,0 @@
-intrinsics/gen/frexp/a3f940.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %15 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %frexp_a3f940 "frexp_a3f940"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-        %int = OpTypeInt 32 1
-      %v2int = OpTypeVector %int 2
-%_ptr_Workgroup_v2int = OpTypePointer Workgroup %v2int
-      %arg_1 = OpVariable %_ptr_Workgroup_v2int Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-      %float = OpTypeFloat 32
-    %v2float = OpTypeVector %float 2
-         %16 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %20 = OpTypeFunction %void %uint
-         %24 = OpConstantNull %v2int
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%frexp_a3f940 = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v2float Function %16
-         %12 = OpExtInst %v2float %15 Frexp %16 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %20
-%local_invocation_index = OpFunctionParameter %uint
-         %23 = OpLabel
-               OpStore %arg_1 %24
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %28 = OpFunctionCall %void %frexp_a3f940
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %30 = OpLabel
-         %32 = OpLoad %uint %local_invocation_index_1
-         %31 = OpFunctionCall %void %compute_main_inner %32
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.wgsl
deleted file mode 100644
index b40075f..0000000
--- a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/frexp/a3f940.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-var<workgroup> arg_1 : vec2<i32>;
-
-fn frexp_a3f940() {
-  var res : vec2<f32> = frexp(vec2<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a3f940();
-}
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl b/test/intrinsics/gen/frexp/a951b5.wgsl
deleted file mode 100644
index 7d7bc88..0000000
--- a/test/intrinsics/gen/frexp/a951b5.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<2, f32>, ptr<function, vec<2, i32>, write>) -> vec<2, f32>
-fn frexp_a951b5() {
-  var arg_1: vec2<i32>;
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_a951b5();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_a951b5();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a951b5();
-}
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.hlsl
deleted file mode 100644
index 62c2175..0000000
--- a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/a951b5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-float2 tint_frexp(float2 param_0, inout int2 param_1) {
-  float2 float_exp;
-  float2 significand = frexp(param_0, float_exp);
-  param_1 = int2(float_exp);
-  return significand;
-}
-
-void frexp_a951b5() {
-  int2 arg_1 = int2(0, 0);
-  float2 res = tint_frexp(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_a951b5();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_a951b5();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_a951b5();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.msl b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.msl
deleted file mode 100644
index a995704..0000000
--- a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/a951b5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_frexp(float2 param_0, thread int2* param_1) {
-  int2 exp;
-  float2 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_a951b5() {
-  int2 arg_1 = 0;
-  float2 res = tint_frexp(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_a951b5();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_a951b5();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_a951b5();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm
deleted file mode 100644
index fc55f6a..0000000
--- a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/a951b5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_a951b5 "frexp_a951b5"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v2int = OpTypeVector %int 2
-%_ptr_Function_v2int = OpTypePointer Function %v2int
-         %17 = OpConstantNull %v2int
-    %v2float = OpTypeVector %float 2
-         %21 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_a951b5 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2int Function %17
-        %res = OpVariable %_ptr_Function_v2float Function %21
-         %18 = OpExtInst %v2float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_a951b5
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_a951b5
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_a951b5
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.wgsl
deleted file mode 100644
index 431a4a7..0000000
--- a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/a951b5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_a951b5() {
-  var arg_1 : vec2<i32>;
-  var res : vec2<f32> = frexp(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_a951b5();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_a951b5();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_a951b5();
-}
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl b/test/intrinsics/gen/frexp/b45525.wgsl
deleted file mode 100644
index c2dd4ce..0000000
--- a/test/intrinsics/gen/frexp/b45525.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec4<i32>;
-
-// fn frexp(vec<4, f32>, ptr<private, vec<4, i32>, read_write>) -> vec<4, f32>
-fn frexp_b45525() {
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_b45525();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_b45525();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b45525();
-}
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/b45525.wgsl.expected.hlsl
deleted file mode 100644
index 5959903..0000000
--- a/test/intrinsics/gen/frexp/b45525.wgsl.expected.hlsl
+++ /dev/null
@@ -1,43 +0,0 @@
-intrinsics/gen/frexp/b45525.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-float4 tint_frexp(float4 param_0, inout int4 param_1) {
-  float4 float_exp;
-  float4 significand = frexp(param_0, float_exp);
-  param_1 = int4(float_exp);
-  return significand;
-}
-
-static int4 arg_1 = int4(0, 0, 0, 0);
-
-void frexp_b45525() {
-  float4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_b45525();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_b45525();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_b45525();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl.expected.msl b/test/intrinsics/gen/frexp/b45525.wgsl.expected.msl
deleted file mode 100644
index 6a0ccc9..0000000
--- a/test/intrinsics/gen/frexp/b45525.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/frexp/b45525.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_frexp(float4 param_0, thread int4* param_1) {
-  int4 exp;
-  float4 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_b45525(thread int4* const tint_symbol_1) {
-  float4 res = tint_frexp(float4(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread int4* const tint_symbol_2) {
-  frexp_b45525(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread int4 tint_symbol_3 = 0;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread int4 tint_symbol_4 = 0;
-  frexp_b45525(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread int4 tint_symbol_5 = 0;
-  frexp_b45525(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm
deleted file mode 100644
index a4cf67d..0000000
--- a/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm
+++ /dev/null
@@ -1,75 +0,0 @@
-intrinsics/gen/frexp/b45525.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 37
-; Schema: 0
-               OpCapability Shader
-         %19 = 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 %arg_1 "arg_1"
-               OpName %frexp_b45525 "frexp_b45525"
-               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
-      %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
-        %int = OpTypeInt 32 1
-      %v4int = OpTypeVector %int 4
-%_ptr_Private_v4int = OpTypePointer Private %v4int
-         %13 = OpConstantNull %v4int
-      %arg_1 = OpVariable %_ptr_Private_v4int Private %13
-       %void = OpTypeVoid
-         %14 = OpTypeFunction %void
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %23 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_b45525 = OpFunction %void None %14
-         %17 = OpLabel
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_b45525
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %14
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %14
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %frexp_b45525
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %14
-         %35 = OpLabel
-         %36 = OpFunctionCall %void %frexp_b45525
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/b45525.wgsl.expected.wgsl
deleted file mode 100644
index b31806c..0000000
--- a/test/intrinsics/gen/frexp/b45525.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/frexp/b45525.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-var<private> arg_1 : vec4<i32>;
-
-fn frexp_b45525() {
-  var res : vec4<f32> = frexp(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_b45525();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_b45525();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b45525();
-}
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl b/test/intrinsics/gen/frexp/b87f4e.wgsl
deleted file mode 100644
index e3c028e..0000000
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec4<i32>;
-
-// fn frexp(vec<4, f32>, ptr<workgroup, vec<4, i32>, read_write>) -> vec<4, f32>
-fn frexp_b87f4e() {
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b87f4e();
-}
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.hlsl
deleted file mode 100644
index e0efe14..0000000
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.hlsl
+++ /dev/null
@@ -1,34 +0,0 @@
-intrinsics/gen/frexp/b87f4e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-float4 tint_frexp(float4 param_0, inout int4 param_1) {
-  float4 float_exp;
-  float4 significand = frexp(param_0, float_exp);
-  param_1 = int4(float_exp);
-  return significand;
-}
-
-groupshared int4 arg_1;
-
-void frexp_b87f4e() {
-  float4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = int4(0, 0, 0, 0);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  frexp_b87f4e();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.msl b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.msl
deleted file mode 100644
index bea791d..0000000
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/frexp/b87f4e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_frexp(float4 param_0, threadgroup int4* param_1) {
-  int4 exp;
-  float4 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-void frexp_b87f4e(threadgroup int4* const tint_symbol) {
-  float4 res = tint_frexp(float4(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup int4* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = int4();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  frexp_b87f4e(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup int4 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm
deleted file mode 100644
index 5bf5e77..0000000
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm
+++ /dev/null
@@ -1,60 +0,0 @@
-intrinsics/gen/frexp/b87f4e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %15 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %frexp_b87f4e "frexp_b87f4e"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-        %int = OpTypeInt 32 1
-      %v4int = OpTypeVector %int 4
-%_ptr_Workgroup_v4int = OpTypePointer Workgroup %v4int
-      %arg_1 = OpVariable %_ptr_Workgroup_v4int Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-      %float = OpTypeFloat 32
-    %v4float = OpTypeVector %float 4
-         %16 = OpConstantNull %v4float
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %20 = OpTypeFunction %void %uint
-         %24 = OpConstantNull %v4int
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%frexp_b87f4e = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v4float Function %16
-         %12 = OpExtInst %v4float %15 Frexp %16 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %20
-%local_invocation_index = OpFunctionParameter %uint
-         %23 = OpLabel
-               OpStore %arg_1 %24
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %28 = OpFunctionCall %void %frexp_b87f4e
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %30 = OpLabel
-         %32 = OpLoad %uint %local_invocation_index_1
-         %31 = OpFunctionCall %void %compute_main_inner %32
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.wgsl
deleted file mode 100644
index 2d23758..0000000
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/frexp/b87f4e.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = frexp(vec4<f32>(), &arg_1);
-                       ^^^^^
-
-var<workgroup> arg_1 : vec4<i32>;
-
-fn frexp_b87f4e() {
-  var res : vec4<f32> = frexp(vec4<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b87f4e();
-}
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl b/test/intrinsics/gen/frexp/b9e4de.wgsl
deleted file mode 100644
index 960da78..0000000
--- a/test/intrinsics/gen/frexp/b9e4de.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<3, f32>, ptr<function, vec<3, i32>, write>) -> vec<3, f32>
-fn frexp_b9e4de() {
-  var arg_1: vec3<i32>;
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_b9e4de();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_b9e4de();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b9e4de();
-}
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.hlsl
deleted file mode 100644
index 60df4fc..0000000
--- a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/b9e4de.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-float3 tint_frexp(float3 param_0, inout int3 param_1) {
-  float3 float_exp;
-  float3 significand = frexp(param_0, float_exp);
-  param_1 = int3(float_exp);
-  return significand;
-}
-
-void frexp_b9e4de() {
-  int3 arg_1 = int3(0, 0, 0);
-  float3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_b9e4de();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_b9e4de();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_b9e4de();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.msl b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.msl
deleted file mode 100644
index d850e12..0000000
--- a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/b9e4de.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_frexp(float3 param_0, thread int3* param_1) {
-  int3 exp;
-  float3 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_b9e4de() {
-  int3 arg_1 = 0;
-  float3 res = tint_frexp(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_b9e4de();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_b9e4de();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_b9e4de();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm
deleted file mode 100644
index 28e43bb..0000000
--- a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/b9e4de.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_b9e4de "frexp_b9e4de"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v3int = OpTypeVector %int 3
-%_ptr_Function_v3int = OpTypePointer Function %v3int
-         %17 = OpConstantNull %v3int
-    %v3float = OpTypeVector %float 3
-         %21 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_b9e4de = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3int Function %17
-        %res = OpVariable %_ptr_Function_v3float Function %21
-         %18 = OpExtInst %v3float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_b9e4de
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_b9e4de
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_b9e4de
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.wgsl
deleted file mode 100644
index 7c137ca..0000000
--- a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/b9e4de.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = frexp(vec3<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_b9e4de() {
-  var arg_1 : vec3<i32>;
-  var res : vec3<f32> = frexp(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_b9e4de();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_b9e4de();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_b9e4de();
-}
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl b/test/intrinsics/gen/frexp/c084e3.wgsl
deleted file mode 100644
index b5fd1b4..0000000
--- a/test/intrinsics/gen/frexp/c084e3.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec2<i32>;
-
-// fn frexp(vec<2, f32>, ptr<private, vec<2, i32>, read_write>) -> vec<2, f32>
-fn frexp_c084e3() {
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_c084e3();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_c084e3();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_c084e3();
-}
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.hlsl
deleted file mode 100644
index 7e7f79c..0000000
--- a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.hlsl
+++ /dev/null
@@ -1,43 +0,0 @@
-intrinsics/gen/frexp/c084e3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-float2 tint_frexp(float2 param_0, inout int2 param_1) {
-  float2 float_exp;
-  float2 significand = frexp(param_0, float_exp);
-  param_1 = int2(float_exp);
-  return significand;
-}
-
-static int2 arg_1 = int2(0, 0);
-
-void frexp_c084e3() {
-  float2 res = tint_frexp(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_c084e3();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_c084e3();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_c084e3();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.msl b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.msl
deleted file mode 100644
index bfe4559..0000000
--- a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/frexp/c084e3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_frexp(float2 param_0, thread int2* param_1) {
-  int2 exp;
-  float2 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_c084e3(thread int2* const tint_symbol_1) {
-  float2 res = tint_frexp(float2(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread int2* const tint_symbol_2) {
-  frexp_c084e3(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread int2 tint_symbol_3 = 0;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread int2 tint_symbol_4 = 0;
-  frexp_c084e3(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread int2 tint_symbol_5 = 0;
-  frexp_c084e3(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm
deleted file mode 100644
index 808e4d1..0000000
--- a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/c084e3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %arg_1 "arg_1"
-               OpName %frexp_c084e3 "frexp_c084e3"
-               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
-      %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
-        %int = OpTypeInt 32 1
-      %v2int = OpTypeVector %int 2
-%_ptr_Private_v2int = OpTypePointer Private %v2int
-         %13 = OpConstantNull %v2int
-      %arg_1 = OpVariable %_ptr_Private_v2int Private %13
-       %void = OpTypeVoid
-         %14 = OpTypeFunction %void
-    %v2float = OpTypeVector %float 2
-         %21 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_c084e3 = OpFunction %void None %14
-         %17 = OpLabel
-        %res = OpVariable %_ptr_Function_v2float Function %21
-         %18 = OpExtInst %v2float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_c084e3
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %14
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %14
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_c084e3
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %14
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_c084e3
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.wgsl
deleted file mode 100644
index f924d31..0000000
--- a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/frexp/c084e3.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-var<private> arg_1 : vec2<i32>;
-
-fn frexp_c084e3() {
-  var res : vec2<f32> = frexp(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_c084e3();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_c084e3();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_c084e3();
-}
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl b/test/intrinsics/gen/frexp/d06c2c.wgsl
deleted file mode 100644
index 2ae194e..0000000
--- a/test/intrinsics/gen/frexp/d06c2c.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(vec<2, f32>, ptr<function, vec<2, i32>, read>) -> vec<2, f32>
-fn frexp_d06c2c() {
-  var arg_1: vec2<i32>;
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_d06c2c();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_d06c2c();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_d06c2c();
-}
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.hlsl
deleted file mode 100644
index d03a5b1..0000000
--- a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/d06c2c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-float2 tint_frexp(float2 param_0, inout int2 param_1) {
-  float2 float_exp;
-  float2 significand = frexp(param_0, float_exp);
-  param_1 = int2(float_exp);
-  return significand;
-}
-
-void frexp_d06c2c() {
-  int2 arg_1 = int2(0, 0);
-  float2 res = tint_frexp(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_d06c2c();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_d06c2c();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_d06c2c();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.msl b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.msl
deleted file mode 100644
index cafa8c9..0000000
--- a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/d06c2c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_frexp(float2 param_0, thread int2* param_1) {
-  int2 exp;
-  float2 sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_d06c2c() {
-  int2 arg_1 = 0;
-  float2 res = tint_frexp(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_d06c2c();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_d06c2c();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_d06c2c();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm
deleted file mode 100644
index cdd710d..0000000
--- a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm
+++ /dev/null
@@ -1,77 +0,0 @@
-intrinsics/gen/frexp/d06c2c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 39
-; Schema: 0
-               OpCapability Shader
-         %20 = 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 %frexp_d06c2c "frexp_d06c2c"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-      %v2int = OpTypeVector %int 2
-%_ptr_Function_v2int = OpTypePointer Function %v2int
-         %17 = OpConstantNull %v2int
-    %v2float = OpTypeVector %float 2
-         %21 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %25 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%frexp_d06c2c = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2int Function %17
-        %res = OpVariable %_ptr_Function_v2float Function %21
-         %18 = OpExtInst %v2float %20 Frexp %21 %arg_1
-               OpStore %res %18
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %25
-         %27 = OpLabel
-         %28 = OpFunctionCall %void %frexp_d06c2c
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %31
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_d06c2c
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %37 = OpLabel
-         %38 = OpFunctionCall %void %frexp_d06c2c
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.wgsl
deleted file mode 100644
index 1680cd9..0000000
--- a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/d06c2c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = frexp(vec2<f32>(), &arg_1);
-                       ^^^^^
-
-fn frexp_d06c2c() {
-  var arg_1 : vec2<i32>;
-  var res : vec2<f32> = frexp(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_d06c2c();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_d06c2c();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_d06c2c();
-}
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl b/test/intrinsics/gen/frexp/e061dd.wgsl
deleted file mode 100644
index b9ea806..0000000
--- a/test/intrinsics/gen/frexp/e061dd.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn frexp(f32, ptr<function, i32, write>) -> f32
-fn frexp_e061dd() {
-  var arg_1: i32;
-  var res: f32 = frexp(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_e061dd();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_e061dd();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_e061dd();
-}
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.hlsl b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.hlsl
deleted file mode 100644
index 636e19a..0000000
--- a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.hlsl
+++ /dev/null
@@ -1,42 +0,0 @@
-intrinsics/gen/frexp/e061dd.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-float tint_frexp(float param_0, inout int param_1) {
-  float float_exp;
-  float significand = frexp(param_0, float_exp);
-  param_1 = int(float_exp);
-  return significand;
-}
-
-void frexp_e061dd() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  frexp_e061dd();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  frexp_e061dd();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  frexp_e061dd();
-  return;
-}
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.msl b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.msl
deleted file mode 100644
index 7ef1000..0000000
--- a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/frexp/e061dd.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_frexp(float param_0, thread int* param_1) {
-  int exp;
-  float sig = frexp(param_0, exp);
-  *param_1 = exp;
-  return sig;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void frexp_e061dd() {
-  int arg_1 = 0;
-  float res = tint_frexp(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  frexp_e061dd();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  frexp_e061dd();
-  return;
-}
-
-kernel void compute_main() {
-  frexp_e061dd();
-  return;
-}
-
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm
deleted file mode 100644
index 2b5912d..0000000
--- a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/frexp/e061dd.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %frexp_e061dd "frexp_e061dd"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-        %int = OpTypeInt 32 1
-%_ptr_Function_int = OpTypePointer Function %int
-         %16 = OpConstantNull %int
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %23 = OpTypeFunction %v4float
-%frexp_e061dd = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_int Function %16
-        %res = OpVariable %_ptr_Function_float Function %8
-         %17 = OpExtInst %float %18 Frexp %float_1 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %23
-         %25 = OpLabel
-         %26 = OpFunctionCall %void %frexp_e061dd
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %29
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %frexp_e061dd
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %frexp_e061dd
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.wgsl b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.wgsl
deleted file mode 100644
index feb5bad..0000000
--- a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/frexp/e061dd.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = frexp(1.0, &arg_1);
-                 ^^^^^
-
-fn frexp_e061dd() {
-  var arg_1 : i32;
-  var res : f32 = frexp(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  frexp_e061dd();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  frexp_e061dd();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  frexp_e061dd();
-}
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl b/test/intrinsics/gen/modf/1d59e5.wgsl
deleted file mode 100644
index 2223d3f..0000000
--- a/test/intrinsics/gen/modf/1d59e5.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec4<f32>;
-
-// fn modf(vec<4, f32>, ptr<workgroup, vec<4, f32>, read_write>) -> vec<4, f32>
-fn modf_1d59e5() {
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_1d59e5();
-}
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.hlsl b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.hlsl
deleted file mode 100644
index 8099d2e..0000000
--- a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.hlsl
+++ /dev/null
@@ -1,27 +0,0 @@
-intrinsics/gen/modf/1d59e5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-groupshared float4 arg_1;
-
-void modf_1d59e5() {
-  float4 res = modf(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = float4(0.0f, 0.0f, 0.0f, 0.0f);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  modf_1d59e5();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.msl b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.msl
deleted file mode 100644
index 1db9b27..0000000
--- a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/modf/1d59e5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_modf(float4 param_0, threadgroup float4* param_1) {
-  float4 whole;
-  float4 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-void modf_1d59e5(threadgroup float4* const tint_symbol) {
-  float4 res = tint_modf(float4(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup float4* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = float4();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  modf_1d59e5(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup float4 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm
deleted file mode 100644
index a8c3e95..0000000
--- a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm
+++ /dev/null
@@ -1,57 +0,0 @@
-intrinsics/gen/modf/1d59e5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 30
-; Schema: 0
-               OpCapability Shader
-         %13 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %modf_1d59e5 "modf_1d59e5"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-      %float = OpTypeFloat 32
-    %v4float = OpTypeVector %float 4
-%_ptr_Workgroup_v4float = OpTypePointer Workgroup %v4float
-      %arg_1 = OpVariable %_ptr_Workgroup_v4float Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-         %14 = OpConstantNull %v4float
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %18 = OpTypeFunction %void %uint
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%modf_1d59e5 = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v4float Function %14
-         %12 = OpExtInst %v4float %13 Modf %14 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %18
-%local_invocation_index = OpFunctionParameter %uint
-         %21 = OpLabel
-               OpStore %arg_1 %14
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %25 = OpFunctionCall %void %modf_1d59e5
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %27 = OpLabel
-         %29 = OpLoad %uint %local_invocation_index_1
-         %28 = OpFunctionCall %void %compute_main_inner %29
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.wgsl b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.wgsl
deleted file mode 100644
index 3a82932..0000000
--- a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/modf/1d59e5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-var<workgroup> arg_1 : vec4<f32>;
-
-fn modf_1d59e5() {
-  var res : vec4<f32> = modf(vec4<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_1d59e5();
-}
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl b/test/intrinsics/gen/modf/353f7d.wgsl
deleted file mode 100644
index ed1c142..0000000
--- a/test/intrinsics/gen/modf/353f7d.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(f32, ptr<function, f32, write>) -> f32
-fn modf_353f7d() {
-  var arg_1: f32;
-  var res: f32 = modf(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_353f7d();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_353f7d();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_353f7d();
-}
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl.expected.hlsl b/test/intrinsics/gen/modf/353f7d.wgsl.expected.hlsl
deleted file mode 100644
index 99e0a30..0000000
--- a/test/intrinsics/gen/modf/353f7d.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/353f7d.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-void modf_353f7d() {
-  float arg_1 = 0.0f;
-  float res = modf(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_353f7d();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_353f7d();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_353f7d();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl.expected.msl b/test/intrinsics/gen/modf/353f7d.wgsl.expected.msl
deleted file mode 100644
index 652a15a..0000000
--- a/test/intrinsics/gen/modf/353f7d.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/353f7d.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_modf(float param_0, thread float* param_1) {
-  float whole;
-  float fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_353f7d() {
-  float arg_1 = 0.0f;
-  float res = tint_modf(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_353f7d();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_353f7d();
-  return;
-}
-
-kernel void compute_main() {
-  modf_353f7d();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm b/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm
deleted file mode 100644
index 313d08f..0000000
--- a/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/353f7d.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_353f7d "modf_353f7d"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_float = OpTypePointer Function %float
-    %float_1 = OpConstant %float 1
-         %20 = OpTypeFunction %v4float
-%modf_353f7d = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_float Function %8
-        %res = OpVariable %_ptr_Function_float Function %8
-         %15 = OpExtInst %float %16 Modf %float_1 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %20
-         %22 = OpLabel
-         %23 = OpFunctionCall %void %modf_353f7d
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %25 = OpLabel
-         %26 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %26
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_353f7d
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_353f7d
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl.expected.wgsl b/test/intrinsics/gen/modf/353f7d.wgsl.expected.wgsl
deleted file mode 100644
index f57dfff..0000000
--- a/test/intrinsics/gen/modf/353f7d.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/353f7d.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-fn modf_353f7d() {
-  var arg_1 : f32;
-  var res : f32 = modf(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_353f7d();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_353f7d();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_353f7d();
-}
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl b/test/intrinsics/gen/modf/3b79d5.wgsl
deleted file mode 100644
index bef354f..0000000
--- a/test/intrinsics/gen/modf/3b79d5.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<3, f32>, ptr<function, vec<3, f32>, read>) -> vec<3, f32>
-fn modf_3b79d5() {
-  var arg_1: vec3<f32>;
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_3b79d5();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_3b79d5();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_3b79d5();
-}
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.hlsl b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.hlsl
deleted file mode 100644
index 925974b..0000000
--- a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/3b79d5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-void modf_3b79d5() {
-  float3 arg_1 = float3(0.0f, 0.0f, 0.0f);
-  float3 res = modf(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_3b79d5();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_3b79d5();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_3b79d5();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.msl b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.msl
deleted file mode 100644
index dfeb8e2..0000000
--- a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/3b79d5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_modf(float3 param_0, thread float3* param_1) {
-  float3 whole;
-  float3 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_3b79d5() {
-  float3 arg_1 = 0.0f;
-  float3 res = tint_modf(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_3b79d5();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_3b79d5();
-  return;
-}
-
-kernel void compute_main() {
-  modf_3b79d5();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm
deleted file mode 100644
index 7b67e04..0000000
--- a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/3b79d5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_3b79d5 "modf_3b79d5"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v3float = OpTypeVector %float 3
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %16 = OpConstantNull %v3float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_3b79d5 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3float Function %16
-        %res = OpVariable %_ptr_Function_v3float Function %16
-         %17 = OpExtInst %v3float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_3b79d5
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_3b79d5
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_3b79d5
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.wgsl b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.wgsl
deleted file mode 100644
index 616c2b8..0000000
--- a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/3b79d5.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_3b79d5() {
-  var arg_1 : vec3<f32>;
-  var res : vec3<f32> = modf(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_3b79d5();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_3b79d5();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_3b79d5();
-}
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl b/test/intrinsics/gen/modf/3d00e2.wgsl
deleted file mode 100644
index 6f3d9d1..0000000
--- a/test/intrinsics/gen/modf/3d00e2.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec4<f32>;
-
-// fn modf(vec<4, f32>, ptr<private, vec<4, f32>, read_write>) -> vec<4, f32>
-fn modf_3d00e2() {
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_3d00e2();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_3d00e2();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_3d00e2();
-}
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.hlsl b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.hlsl
deleted file mode 100644
index 4791733..0000000
--- a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.hlsl
+++ /dev/null
@@ -1,36 +0,0 @@
-intrinsics/gen/modf/3d00e2.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-static float4 arg_1 = float4(0.0f, 0.0f, 0.0f, 0.0f);
-
-void modf_3d00e2() {
-  float4 res = modf(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_3d00e2();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_3d00e2();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_3d00e2();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.msl b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.msl
deleted file mode 100644
index 273d98b..0000000
--- a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/modf/3d00e2.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_modf(float4 param_0, thread float4* param_1) {
-  float4 whole;
-  float4 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_3d00e2(thread float4* const tint_symbol_1) {
-  float4 res = tint_modf(float4(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread float4* const tint_symbol_2) {
-  modf_3d00e2(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread float4 tint_symbol_3 = 0.0f;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread float4 tint_symbol_4 = 0.0f;
-  modf_3d00e2(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread float4 tint_symbol_5 = 0.0f;
-  modf_3d00e2(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm
deleted file mode 100644
index 1fb0904..0000000
--- a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm
+++ /dev/null
@@ -1,72 +0,0 @@
-intrinsics/gen/modf/3d00e2.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 34
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %arg_1 "arg_1"
-               OpName %modf_3d00e2 "modf_3d00e2"
-               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
-      %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
-%_ptr_Private_v4float = OpTypePointer Private %v4float
-      %arg_1 = OpVariable %_ptr_Private_v4float Private %5
-       %void = OpTypeVoid
-         %11 = OpTypeFunction %void
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %20 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_3d00e2 = OpFunction %void None %11
-         %14 = OpLabel
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %15 = OpExtInst %v4float %16 Modf %5 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %20
-         %22 = OpLabel
-         %23 = OpFunctionCall %void %modf_3d00e2
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %11
-         %25 = OpLabel
-         %26 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %26
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %11
-         %29 = OpLabel
-         %30 = OpFunctionCall %void %modf_3d00e2
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %11
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %modf_3d00e2
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.wgsl b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.wgsl
deleted file mode 100644
index 8f08f94..0000000
--- a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/modf/3d00e2.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-var<private> arg_1 : vec4<f32>;
-
-fn modf_3d00e2() {
-  var res : vec4<f32> = modf(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_3d00e2();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_3d00e2();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_3d00e2();
-}
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl b/test/intrinsics/gen/modf/4bb324.wgsl
deleted file mode 100644
index b8a41d6..0000000
--- a/test/intrinsics/gen/modf/4bb324.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<4, f32>, ptr<function, vec<4, f32>, read_write>) -> vec<4, f32>
-fn modf_4bb324() {
-  var arg_1: vec4<f32>;
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_4bb324();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_4bb324();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_4bb324();
-}
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl.expected.hlsl b/test/intrinsics/gen/modf/4bb324.wgsl.expected.hlsl
deleted file mode 100644
index 73afb4f..0000000
--- a/test/intrinsics/gen/modf/4bb324.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/4bb324.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-void modf_4bb324() {
-  float4 arg_1 = float4(0.0f, 0.0f, 0.0f, 0.0f);
-  float4 res = modf(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_4bb324();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_4bb324();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_4bb324();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl.expected.msl b/test/intrinsics/gen/modf/4bb324.wgsl.expected.msl
deleted file mode 100644
index f808dfb..0000000
--- a/test/intrinsics/gen/modf/4bb324.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/4bb324.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_modf(float4 param_0, thread float4* param_1) {
-  float4 whole;
-  float4 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_4bb324() {
-  float4 arg_1 = 0.0f;
-  float4 res = tint_modf(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_4bb324();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_4bb324();
-  return;
-}
-
-kernel void compute_main() {
-  modf_4bb324();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm b/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm
deleted file mode 100644
index 8a27a60..0000000
--- a/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/4bb324.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_4bb324 "modf_4bb324"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %19 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_4bb324 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4float Function %5
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %15 = OpExtInst %v4float %16 Modf %5 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %19
-         %21 = OpLabel
-         %22 = OpFunctionCall %void %modf_4bb324
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %24 = OpLabel
-         %25 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %25
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_4bb324
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_4bb324
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl.expected.wgsl b/test/intrinsics/gen/modf/4bb324.wgsl.expected.wgsl
deleted file mode 100644
index 61a8ca8..0000000
--- a/test/intrinsics/gen/modf/4bb324.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/4bb324.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_4bb324() {
-  var arg_1 : vec4<f32>;
-  var res : vec4<f32> = modf(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_4bb324();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_4bb324();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_4bb324();
-}
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl b/test/intrinsics/gen/modf/4fe3d9.wgsl
deleted file mode 100644
index 10c2d1b..0000000
--- a/test/intrinsics/gen/modf/4fe3d9.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<3, f32>, ptr<function, vec<3, f32>, write>) -> vec<3, f32>
-fn modf_4fe3d9() {
-  var arg_1: vec3<f32>;
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_4fe3d9();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_4fe3d9();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_4fe3d9();
-}
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.hlsl b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.hlsl
deleted file mode 100644
index 7428221..0000000
--- a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/4fe3d9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-void modf_4fe3d9() {
-  float3 arg_1 = float3(0.0f, 0.0f, 0.0f);
-  float3 res = modf(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_4fe3d9();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_4fe3d9();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_4fe3d9();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.msl b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.msl
deleted file mode 100644
index decfe81..0000000
--- a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/4fe3d9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_modf(float3 param_0, thread float3* param_1) {
-  float3 whole;
-  float3 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_4fe3d9() {
-  float3 arg_1 = 0.0f;
-  float3 res = tint_modf(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_4fe3d9();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_4fe3d9();
-  return;
-}
-
-kernel void compute_main() {
-  modf_4fe3d9();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm
deleted file mode 100644
index 519db9e..0000000
--- a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/4fe3d9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_4fe3d9 "modf_4fe3d9"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v3float = OpTypeVector %float 3
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %16 = OpConstantNull %v3float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_4fe3d9 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3float Function %16
-        %res = OpVariable %_ptr_Function_v3float Function %16
-         %17 = OpExtInst %v3float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_4fe3d9
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_4fe3d9
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_4fe3d9
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.wgsl b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.wgsl
deleted file mode 100644
index c145208..0000000
--- a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/4fe3d9.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_4fe3d9() {
-  var arg_1 : vec3<f32>;
-  var res : vec3<f32> = modf(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_4fe3d9();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_4fe3d9();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_4fe3d9();
-}
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl b/test/intrinsics/gen/modf/51e4c6.wgsl
deleted file mode 100644
index c42d4cc..0000000
--- a/test/intrinsics/gen/modf/51e4c6.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<2, f32>, ptr<function, vec<2, f32>, read_write>) -> vec<2, f32>
-fn modf_51e4c6() {
-  var arg_1: vec2<f32>;
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_51e4c6();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_51e4c6();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_51e4c6();
-}
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.hlsl b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.hlsl
deleted file mode 100644
index 530ecd0..0000000
--- a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/51e4c6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-void modf_51e4c6() {
-  float2 arg_1 = float2(0.0f, 0.0f);
-  float2 res = modf(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_51e4c6();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_51e4c6();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_51e4c6();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.msl b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.msl
deleted file mode 100644
index 10b36f8..0000000
--- a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/51e4c6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_modf(float2 param_0, thread float2* param_1) {
-  float2 whole;
-  float2 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_51e4c6() {
-  float2 arg_1 = 0.0f;
-  float2 res = tint_modf(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_51e4c6();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_51e4c6();
-  return;
-}
-
-kernel void compute_main() {
-  modf_51e4c6();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm
deleted file mode 100644
index c3cba65..0000000
--- a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/51e4c6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_51e4c6 "modf_51e4c6"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v2float = OpTypeVector %float 2
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %16 = OpConstantNull %v2float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_51e4c6 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2float Function %16
-        %res = OpVariable %_ptr_Function_v2float Function %16
-         %17 = OpExtInst %v2float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_51e4c6
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_51e4c6
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_51e4c6
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.wgsl b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.wgsl
deleted file mode 100644
index 700ffe5..0000000
--- a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/51e4c6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_51e4c6() {
-  var arg_1 : vec2<f32>;
-  var res : vec2<f32> = modf(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_51e4c6();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_51e4c6();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_51e4c6();
-}
diff --git a/test/intrinsics/gen/modf/546e09.wgsl b/test/intrinsics/gen/modf/546e09.wgsl
deleted file mode 100644
index c452c4a..0000000
--- a/test/intrinsics/gen/modf/546e09.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(f32, ptr<function, f32, read_write>) -> f32
-fn modf_546e09() {
-  var arg_1: f32;
-  var res: f32 = modf(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_546e09();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_546e09();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_546e09();
-}
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.hlsl b/test/intrinsics/gen/modf/546e09.wgsl.expected.hlsl
deleted file mode 100644
index 4a7a1ee..0000000
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/546e09.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-void modf_546e09() {
-  float arg_1 = 0.0f;
-  float res = modf(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_546e09();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_546e09();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_546e09();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.msl b/test/intrinsics/gen/modf/546e09.wgsl.expected.msl
deleted file mode 100644
index eb30dcd..0000000
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/546e09.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_modf(float param_0, thread float* param_1) {
-  float whole;
-  float fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_546e09() {
-  float arg_1 = 0.0f;
-  float res = tint_modf(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_546e09();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_546e09();
-  return;
-}
-
-kernel void compute_main() {
-  modf_546e09();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm b/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm
deleted file mode 100644
index c7cc15a..0000000
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/546e09.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_546e09 "modf_546e09"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_float = OpTypePointer Function %float
-    %float_1 = OpConstant %float 1
-         %20 = OpTypeFunction %v4float
-%modf_546e09 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_float Function %8
-        %res = OpVariable %_ptr_Function_float Function %8
-         %15 = OpExtInst %float %16 Modf %float_1 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %20
-         %22 = OpLabel
-         %23 = OpFunctionCall %void %modf_546e09
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %25 = OpLabel
-         %26 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %26
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_546e09
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_546e09
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl b/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl
deleted file mode 100644
index ab9908d..0000000
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/546e09.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-fn modf_546e09() {
-  var arg_1 : f32;
-  var res : f32 = modf(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_546e09();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_546e09();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_546e09();
-}
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl b/test/intrinsics/gen/modf/5e8476.wgsl
deleted file mode 100644
index 1ebc934..0000000
--- a/test/intrinsics/gen/modf/5e8476.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: f32;
-
-// fn modf(f32, ptr<private, f32, read_write>) -> f32
-fn modf_5e8476() {
-  var res: f32 = modf(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_5e8476();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_5e8476();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_5e8476();
-}
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl.expected.hlsl b/test/intrinsics/gen/modf/5e8476.wgsl.expected.hlsl
deleted file mode 100644
index 5797b91..0000000
--- a/test/intrinsics/gen/modf/5e8476.wgsl.expected.hlsl
+++ /dev/null
@@ -1,36 +0,0 @@
-intrinsics/gen/modf/5e8476.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-static float arg_1 = 0.0f;
-
-void modf_5e8476() {
-  float res = modf(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_5e8476();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_5e8476();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_5e8476();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl.expected.msl b/test/intrinsics/gen/modf/5e8476.wgsl.expected.msl
deleted file mode 100644
index 3928eb1..0000000
--- a/test/intrinsics/gen/modf/5e8476.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/modf/5e8476.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_modf(float param_0, thread float* param_1) {
-  float whole;
-  float fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_5e8476(thread float* const tint_symbol_1) {
-  float res = tint_modf(1.0f, tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread float* const tint_symbol_2) {
-  modf_5e8476(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread float tint_symbol_3 = 0.0f;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread float tint_symbol_4 = 0.0f;
-  modf_5e8476(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread float tint_symbol_5 = 0.0f;
-  modf_5e8476(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm b/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm
deleted file mode 100644
index 6b273c1..0000000
--- a/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm
+++ /dev/null
@@ -1,72 +0,0 @@
-intrinsics/gen/modf/5e8476.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 34
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %arg_1 "arg_1"
-               OpName %modf_5e8476 "modf_5e8476"
-               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
-      %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
-%_ptr_Private_float = OpTypePointer Private %float
-      %arg_1 = OpVariable %_ptr_Private_float Private %8
-       %void = OpTypeVoid
-         %11 = OpTypeFunction %void
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %21 = OpTypeFunction %v4float
-%modf_5e8476 = OpFunction %void None %11
-         %14 = OpLabel
-        %res = OpVariable %_ptr_Function_float Function %8
-         %15 = OpExtInst %float %16 Modf %float_1 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_5e8476
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %11
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %11
-         %29 = OpLabel
-         %30 = OpFunctionCall %void %modf_5e8476
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %11
-         %32 = OpLabel
-         %33 = OpFunctionCall %void %modf_5e8476
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl.expected.wgsl b/test/intrinsics/gen/modf/5e8476.wgsl.expected.wgsl
deleted file mode 100644
index 5888c21..0000000
--- a/test/intrinsics/gen/modf/5e8476.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/modf/5e8476.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-var<private> arg_1 : f32;
-
-fn modf_5e8476() {
-  var res : f32 = modf(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_5e8476();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_5e8476();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_5e8476();
-}
diff --git a/test/intrinsics/gen/modf/86441c.wgsl b/test/intrinsics/gen/modf/86441c.wgsl
deleted file mode 100644
index c86e352..0000000
--- a/test/intrinsics/gen/modf/86441c.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<2, f32>, ptr<function, vec<2, f32>, read>) -> vec<2, f32>
-fn modf_86441c() {
-  var arg_1: vec2<f32>;
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_86441c();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_86441c();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_86441c();
-}
diff --git a/test/intrinsics/gen/modf/86441c.wgsl.expected.hlsl b/test/intrinsics/gen/modf/86441c.wgsl.expected.hlsl
deleted file mode 100644
index e90b73b..0000000
--- a/test/intrinsics/gen/modf/86441c.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/86441c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-void modf_86441c() {
-  float2 arg_1 = float2(0.0f, 0.0f);
-  float2 res = modf(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_86441c();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_86441c();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_86441c();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/86441c.wgsl.expected.msl b/test/intrinsics/gen/modf/86441c.wgsl.expected.msl
deleted file mode 100644
index 1a77dc9..0000000
--- a/test/intrinsics/gen/modf/86441c.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/86441c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_modf(float2 param_0, thread float2* param_1) {
-  float2 whole;
-  float2 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_86441c() {
-  float2 arg_1 = 0.0f;
-  float2 res = tint_modf(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_86441c();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_86441c();
-  return;
-}
-
-kernel void compute_main() {
-  modf_86441c();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm b/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm
deleted file mode 100644
index e96d96a..0000000
--- a/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/86441c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_86441c "modf_86441c"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v2float = OpTypeVector %float 2
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %16 = OpConstantNull %v2float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_86441c = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2float Function %16
-        %res = OpVariable %_ptr_Function_v2float Function %16
-         %17 = OpExtInst %v2float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_86441c
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_86441c
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_86441c
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/86441c.wgsl.expected.wgsl b/test/intrinsics/gen/modf/86441c.wgsl.expected.wgsl
deleted file mode 100644
index f2940fe..0000000
--- a/test/intrinsics/gen/modf/86441c.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/86441c.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_86441c() {
-  var arg_1 : vec2<f32>;
-  var res : vec2<f32> = modf(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_86441c();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_86441c();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_86441c();
-}
diff --git a/test/intrinsics/gen/modf/955651.wgsl b/test/intrinsics/gen/modf/955651.wgsl
deleted file mode 100644
index e25db73..0000000
--- a/test/intrinsics/gen/modf/955651.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<3, f32>, ptr<function, vec<3, f32>, read_write>) -> vec<3, f32>
-fn modf_955651() {
-  var arg_1: vec3<f32>;
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_955651();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_955651();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_955651();
-}
diff --git a/test/intrinsics/gen/modf/955651.wgsl.expected.hlsl b/test/intrinsics/gen/modf/955651.wgsl.expected.hlsl
deleted file mode 100644
index 284d837..0000000
--- a/test/intrinsics/gen/modf/955651.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/955651.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-void modf_955651() {
-  float3 arg_1 = float3(0.0f, 0.0f, 0.0f);
-  float3 res = modf(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_955651();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_955651();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_955651();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/955651.wgsl.expected.msl b/test/intrinsics/gen/modf/955651.wgsl.expected.msl
deleted file mode 100644
index dd3121d..0000000
--- a/test/intrinsics/gen/modf/955651.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/955651.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_modf(float3 param_0, thread float3* param_1) {
-  float3 whole;
-  float3 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_955651() {
-  float3 arg_1 = 0.0f;
-  float3 res = tint_modf(float3(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_955651();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_955651();
-  return;
-}
-
-kernel void compute_main() {
-  modf_955651();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm b/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm
deleted file mode 100644
index 9e293c5..0000000
--- a/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/955651.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_955651 "modf_955651"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v3float = OpTypeVector %float 3
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %16 = OpConstantNull %v3float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_955651 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v3float Function %16
-        %res = OpVariable %_ptr_Function_v3float Function %16
-         %17 = OpExtInst %v3float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_955651
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_955651
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_955651
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/955651.wgsl.expected.wgsl b/test/intrinsics/gen/modf/955651.wgsl.expected.wgsl
deleted file mode 100644
index aab1a1e..0000000
--- a/test/intrinsics/gen/modf/955651.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/955651.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_955651() {
-  var arg_1 : vec3<f32>;
-  var res : vec3<f32> = modf(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_955651();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_955651();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_955651();
-}
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl b/test/intrinsics/gen/modf/9c6a91.wgsl
deleted file mode 100644
index d6a4d19..0000000
--- a/test/intrinsics/gen/modf/9c6a91.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec2<f32>;
-
-// fn modf(vec<2, f32>, ptr<private, vec<2, f32>, read_write>) -> vec<2, f32>
-fn modf_9c6a91() {
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_9c6a91();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_9c6a91();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_9c6a91();
-}
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.hlsl b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.hlsl
deleted file mode 100644
index afb6b72..0000000
--- a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.hlsl
+++ /dev/null
@@ -1,36 +0,0 @@
-intrinsics/gen/modf/9c6a91.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-static float2 arg_1 = float2(0.0f, 0.0f);
-
-void modf_9c6a91() {
-  float2 res = modf(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_9c6a91();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_9c6a91();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_9c6a91();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.msl b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.msl
deleted file mode 100644
index 5bd8a41..0000000
--- a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/modf/9c6a91.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_modf(float2 param_0, thread float2* param_1) {
-  float2 whole;
-  float2 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_9c6a91(thread float2* const tint_symbol_1) {
-  float2 res = tint_modf(float2(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread float2* const tint_symbol_2) {
-  modf_9c6a91(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread float2 tint_symbol_3 = 0.0f;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread float2 tint_symbol_4 = 0.0f;
-  modf_9c6a91(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread float2 tint_symbol_5 = 0.0f;
-  modf_9c6a91(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm
deleted file mode 100644
index 51f0b81..0000000
--- a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/modf/9c6a91.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %arg_1 "arg_1"
-               OpName %modf_9c6a91 "modf_9c6a91"
-               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
-      %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
-    %v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
-         %12 = OpConstantNull %v2float
-      %arg_1 = OpVariable %_ptr_Private_v2float Private %12
-       %void = OpTypeVoid
-         %13 = OpTypeFunction %void
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %22 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_9c6a91 = OpFunction %void None %13
-         %16 = OpLabel
-        %res = OpVariable %_ptr_Function_v2float Function %12
-         %17 = OpExtInst %v2float %18 Modf %12 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %22
-         %24 = OpLabel
-         %25 = OpFunctionCall %void %modf_9c6a91
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %13
-         %27 = OpLabel
-         %28 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %28
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %13
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_9c6a91
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %13
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %modf_9c6a91
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.wgsl b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.wgsl
deleted file mode 100644
index dff1475..0000000
--- a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/modf/9c6a91.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-var<private> arg_1 : vec2<f32>;
-
-fn modf_9c6a91() {
-  var res : vec2<f32> = modf(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_9c6a91();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_9c6a91();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_9c6a91();
-}
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl b/test/intrinsics/gen/modf/9cecfc.wgsl
deleted file mode 100644
index 3c89217..0000000
--- a/test/intrinsics/gen/modf/9cecfc.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<private> arg_1: vec3<f32>;
-
-// fn modf(vec<3, f32>, ptr<private, vec<3, f32>, read_write>) -> vec<3, f32>
-fn modf_9cecfc() {
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_9cecfc();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_9cecfc();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_9cecfc();
-}
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.hlsl b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.hlsl
deleted file mode 100644
index 2491128..0000000
--- a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.hlsl
+++ /dev/null
@@ -1,36 +0,0 @@
-intrinsics/gen/modf/9cecfc.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-static float3 arg_1 = float3(0.0f, 0.0f, 0.0f);
-
-void modf_9cecfc() {
-  float3 res = modf(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_9cecfc();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_9cecfc();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_9cecfc();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.msl b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.msl
deleted file mode 100644
index caca996..0000000
--- a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.msl
+++ /dev/null
@@ -1,48 +0,0 @@
-intrinsics/gen/modf/9cecfc.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_modf(float3 param_0, thread float3* param_1) {
-  float3 whole;
-  float3 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_9cecfc(thread float3* const tint_symbol_1) {
-  float3 res = tint_modf(float3(), tint_symbol_1);
-}
-
-float4 vertex_main_inner(thread float3* const tint_symbol_2) {
-  modf_9cecfc(tint_symbol_2);
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  thread float3 tint_symbol_3 = 0.0f;
-  float4 const inner_result = vertex_main_inner(&(tint_symbol_3));
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  thread float3 tint_symbol_4 = 0.0f;
-  modf_9cecfc(&(tint_symbol_4));
-  return;
-}
-
-kernel void compute_main() {
-  thread float3 tint_symbol_5 = 0.0f;
-  modf_9cecfc(&(tint_symbol_5));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm
deleted file mode 100644
index 4ede6a0..0000000
--- a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm
+++ /dev/null
@@ -1,74 +0,0 @@
-intrinsics/gen/modf/9cecfc.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 36
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %arg_1 "arg_1"
-               OpName %modf_9cecfc "modf_9cecfc"
-               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
-      %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
-    %v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
-         %12 = OpConstantNull %v3float
-      %arg_1 = OpVariable %_ptr_Private_v3float Private %12
-       %void = OpTypeVoid
-         %13 = OpTypeFunction %void
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %22 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_9cecfc = OpFunction %void None %13
-         %16 = OpLabel
-        %res = OpVariable %_ptr_Function_v3float Function %12
-         %17 = OpExtInst %v3float %18 Modf %12 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %22
-         %24 = OpLabel
-         %25 = OpFunctionCall %void %modf_9cecfc
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %13
-         %27 = OpLabel
-         %28 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %28
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %13
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_9cecfc
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %13
-         %34 = OpLabel
-         %35 = OpFunctionCall %void %modf_9cecfc
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.wgsl b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.wgsl
deleted file mode 100644
index 7ad6c49..0000000
--- a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.wgsl
+++ /dev/null
@@ -1,25 +0,0 @@
-intrinsics/gen/modf/9cecfc.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-var<private> arg_1 : vec3<f32>;
-
-fn modf_9cecfc() {
-  var res : vec3<f32> = modf(vec3<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_9cecfc();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_9cecfc();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_9cecfc();
-}
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl b/test/intrinsics/gen/modf/a128ab.wgsl
deleted file mode 100644
index 9a5d8ad..0000000
--- a/test/intrinsics/gen/modf/a128ab.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec2<f32>;
-
-// fn modf(vec<2, f32>, ptr<workgroup, vec<2, f32>, read_write>) -> vec<2, f32>
-fn modf_a128ab() {
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_a128ab();
-}
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl.expected.hlsl b/test/intrinsics/gen/modf/a128ab.wgsl.expected.hlsl
deleted file mode 100644
index 7f3ef8f..0000000
--- a/test/intrinsics/gen/modf/a128ab.wgsl.expected.hlsl
+++ /dev/null
@@ -1,27 +0,0 @@
-intrinsics/gen/modf/a128ab.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-groupshared float2 arg_1;
-
-void modf_a128ab() {
-  float2 res = modf(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = float2(0.0f, 0.0f);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  modf_a128ab();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl.expected.msl b/test/intrinsics/gen/modf/a128ab.wgsl.expected.msl
deleted file mode 100644
index b83625b..0000000
--- a/test/intrinsics/gen/modf/a128ab.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/modf/a128ab.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_modf(float2 param_0, threadgroup float2* param_1) {
-  float2 whole;
-  float2 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-void modf_a128ab(threadgroup float2* const tint_symbol) {
-  float2 res = tint_modf(float2(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup float2* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = float2();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  modf_a128ab(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup float2 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm b/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm
deleted file mode 100644
index bf073c2..0000000
--- a/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm
+++ /dev/null
@@ -1,57 +0,0 @@
-intrinsics/gen/modf/a128ab.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 30
-; Schema: 0
-               OpCapability Shader
-         %13 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %modf_a128ab "modf_a128ab"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-      %float = OpTypeFloat 32
-    %v2float = OpTypeVector %float 2
-%_ptr_Workgroup_v2float = OpTypePointer Workgroup %v2float
-      %arg_1 = OpVariable %_ptr_Workgroup_v2float Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-         %14 = OpConstantNull %v2float
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %18 = OpTypeFunction %void %uint
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%modf_a128ab = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v2float Function %14
-         %12 = OpExtInst %v2float %13 Modf %14 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %18
-%local_invocation_index = OpFunctionParameter %uint
-         %21 = OpLabel
-               OpStore %arg_1 %14
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %25 = OpFunctionCall %void %modf_a128ab
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %27 = OpLabel
-         %29 = OpLoad %uint %local_invocation_index_1
-         %28 = OpFunctionCall %void %compute_main_inner %29
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl.expected.wgsl b/test/intrinsics/gen/modf/a128ab.wgsl.expected.wgsl
deleted file mode 100644
index 89a4a28..0000000
--- a/test/intrinsics/gen/modf/a128ab.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/modf/a128ab.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-var<workgroup> arg_1 : vec2<f32>;
-
-fn modf_a128ab() {
-  var res : vec2<f32> = modf(vec2<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_a128ab();
-}
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl b/test/intrinsics/gen/modf/a54eca.wgsl
deleted file mode 100644
index a86ce6e..0000000
--- a/test/intrinsics/gen/modf/a54eca.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<2, f32>, ptr<function, vec<2, f32>, write>) -> vec<2, f32>
-fn modf_a54eca() {
-  var arg_1: vec2<f32>;
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_a54eca();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_a54eca();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_a54eca();
-}
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl.expected.hlsl b/test/intrinsics/gen/modf/a54eca.wgsl.expected.hlsl
deleted file mode 100644
index be7e072..0000000
--- a/test/intrinsics/gen/modf/a54eca.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/a54eca.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-void modf_a54eca() {
-  float2 arg_1 = float2(0.0f, 0.0f);
-  float2 res = modf(float2(0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_a54eca();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_a54eca();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_a54eca();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl.expected.msl b/test/intrinsics/gen/modf/a54eca.wgsl.expected.msl
deleted file mode 100644
index 4ae68e5..0000000
--- a/test/intrinsics/gen/modf/a54eca.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/a54eca.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float2 tint_modf(float2 param_0, thread float2* param_1) {
-  float2 whole;
-  float2 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_a54eca() {
-  float2 arg_1 = 0.0f;
-  float2 res = tint_modf(float2(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_a54eca();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_a54eca();
-  return;
-}
-
-kernel void compute_main() {
-  modf_a54eca();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm b/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm
deleted file mode 100644
index fd65cd4..0000000
--- a/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm
+++ /dev/null
@@ -1,73 +0,0 @@
-intrinsics/gen/modf/a54eca.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 35
-; Schema: 0
-               OpCapability Shader
-         %18 = 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 %modf_a54eca "modf_a54eca"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-    %v2float = OpTypeVector %float 2
-%_ptr_Function_v2float = OpTypePointer Function %v2float
-         %16 = OpConstantNull %v2float
-         %21 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_a54eca = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v2float Function %16
-        %res = OpVariable %_ptr_Function_v2float Function %16
-         %17 = OpExtInst %v2float %18 Modf %16 %arg_1
-               OpStore %res %17
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %21
-         %23 = OpLabel
-         %24 = OpFunctionCall %void %modf_a54eca
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %26 = OpLabel
-         %27 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %27
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %30 = OpLabel
-         %31 = OpFunctionCall %void %modf_a54eca
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %33 = OpLabel
-         %34 = OpFunctionCall %void %modf_a54eca
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl.expected.wgsl b/test/intrinsics/gen/modf/a54eca.wgsl.expected.wgsl
deleted file mode 100644
index 4e886cd..0000000
--- a/test/intrinsics/gen/modf/a54eca.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/a54eca.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec2<f32> = modf(vec2<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_a54eca() {
-  var arg_1 : vec2<f32>;
-  var res : vec2<f32> = modf(vec2<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_a54eca();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_a54eca();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_a54eca();
-}
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl b/test/intrinsics/gen/modf/bb9088.wgsl
deleted file mode 100644
index 20deb68..0000000
--- a/test/intrinsics/gen/modf/bb9088.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: vec3<f32>;
-
-// fn modf(vec<3, f32>, ptr<workgroup, vec<3, f32>, read_write>) -> vec<3, f32>
-fn modf_bb9088() {
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_bb9088();
-}
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl.expected.hlsl b/test/intrinsics/gen/modf/bb9088.wgsl.expected.hlsl
deleted file mode 100644
index 80a527f..0000000
--- a/test/intrinsics/gen/modf/bb9088.wgsl.expected.hlsl
+++ /dev/null
@@ -1,27 +0,0 @@
-intrinsics/gen/modf/bb9088.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-groupshared float3 arg_1;
-
-void modf_bb9088() {
-  float3 res = modf(float3(0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = float3(0.0f, 0.0f, 0.0f);
-  }
-  GroupMemoryBarrierWithGroupSync();
-  modf_bb9088();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl.expected.msl b/test/intrinsics/gen/modf/bb9088.wgsl.expected.msl
deleted file mode 100644
index b5eda27..0000000
--- a/test/intrinsics/gen/modf/bb9088.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/modf/bb9088.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float3 tint_modf(float3 param_0, threadgroup float3* param_1) {
-  float3 whole;
-  float3 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-void modf_bb9088(threadgroup float3* const tint_symbol) {
-  float3 res = tint_modf(float3(), tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup float3* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = float3();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  modf_bb9088(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup float3 tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm b/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm
deleted file mode 100644
index 1b136c0..0000000
--- a/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm
+++ /dev/null
@@ -1,57 +0,0 @@
-intrinsics/gen/modf/bb9088.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 30
-; Schema: 0
-               OpCapability Shader
-         %13 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %modf_bb9088 "modf_bb9088"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-      %float = OpTypeFloat 32
-    %v3float = OpTypeVector %float 3
-%_ptr_Workgroup_v3float = OpTypePointer Workgroup %v3float
-      %arg_1 = OpVariable %_ptr_Workgroup_v3float Workgroup
-       %void = OpTypeVoid
-          %8 = OpTypeFunction %void
-         %14 = OpConstantNull %v3float
-%_ptr_Function_v3float = OpTypePointer Function %v3float
-         %18 = OpTypeFunction %void %uint
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%modf_bb9088 = OpFunction %void None %8
-         %11 = OpLabel
-        %res = OpVariable %_ptr_Function_v3float Function %14
-         %12 = OpExtInst %v3float %13 Modf %14 %arg_1
-               OpStore %res %12
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %18
-%local_invocation_index = OpFunctionParameter %uint
-         %21 = OpLabel
-               OpStore %arg_1 %14
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %25 = OpFunctionCall %void %modf_bb9088
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %8
-         %27 = OpLabel
-         %29 = OpLoad %uint %local_invocation_index_1
-         %28 = OpFunctionCall %void %compute_main_inner %29
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl.expected.wgsl b/test/intrinsics/gen/modf/bb9088.wgsl.expected.wgsl
deleted file mode 100644
index 50f629e..0000000
--- a/test/intrinsics/gen/modf/bb9088.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/modf/bb9088.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec3<f32> = modf(vec3<f32>(), &arg_1);
-                       ^^^^
-
-var<workgroup> arg_1 : vec3<f32>;
-
-fn modf_bb9088() {
-  var res : vec3<f32> = modf(vec3<f32>(), &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_bb9088();
-}
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl b/test/intrinsics/gen/modf/d1d6f6.wgsl
deleted file mode 100644
index 9613cd4..0000000
--- a/test/intrinsics/gen/modf/d1d6f6.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<4, f32>, ptr<function, vec<4, f32>, write>) -> vec<4, f32>
-fn modf_d1d6f6() {
-  var arg_1: vec4<f32>;
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_d1d6f6();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_d1d6f6();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_d1d6f6();
-}
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.hlsl b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.hlsl
deleted file mode 100644
index 3878a2f..0000000
--- a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/d1d6f6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-void modf_d1d6f6() {
-  float4 arg_1 = float4(0.0f, 0.0f, 0.0f, 0.0f);
-  float4 res = modf(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_d1d6f6();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_d1d6f6();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_d1d6f6();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.msl b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.msl
deleted file mode 100644
index b62640b..0000000
--- a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/d1d6f6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_modf(float4 param_0, thread float4* param_1) {
-  float4 whole;
-  float4 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_d1d6f6() {
-  float4 arg_1 = 0.0f;
-  float4 res = tint_modf(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_d1d6f6();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_d1d6f6();
-  return;
-}
-
-kernel void compute_main() {
-  modf_d1d6f6();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm
deleted file mode 100644
index cee0c29..0000000
--- a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/d1d6f6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_d1d6f6 "modf_d1d6f6"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %19 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_d1d6f6 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4float Function %5
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %15 = OpExtInst %v4float %16 Modf %5 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %19
-         %21 = OpLabel
-         %22 = OpFunctionCall %void %modf_d1d6f6
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %24 = OpLabel
-         %25 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %25
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_d1d6f6
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_d1d6f6
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.wgsl b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.wgsl
deleted file mode 100644
index 113e0c1..0000000
--- a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/d1d6f6.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_d1d6f6() {
-  var arg_1 : vec4<f32>;
-  var res : vec4<f32> = modf(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_d1d6f6();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_d1d6f6();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_d1d6f6();
-}
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl b/test/intrinsics/gen/modf/e38ae6.wgsl
deleted file mode 100644
index 6e23d7e..0000000
--- a/test/intrinsics/gen/modf/e38ae6.wgsl
+++ /dev/null
@@ -1,35 +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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-var<workgroup> arg_1: f32;
-
-// fn modf(f32, ptr<workgroup, f32, read_write>) -> f32
-fn modf_e38ae6() {
-  var res: f32 = modf(1.0, &arg_1);
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_e38ae6();
-}
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.hlsl b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.hlsl
deleted file mode 100644
index 535f842..0000000
--- a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.hlsl
+++ /dev/null
@@ -1,27 +0,0 @@
-intrinsics/gen/modf/e38ae6.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-groupshared float arg_1;
-
-void modf_e38ae6() {
-  float res = modf(1.0f, arg_1);
-}
-
-struct tint_symbol_1 {
-  uint local_invocation_index : SV_GroupIndex;
-};
-
-void compute_main_inner(uint local_invocation_index) {
-  {
-    arg_1 = 0.0f;
-  }
-  GroupMemoryBarrierWithGroupSync();
-  modf_e38ae6();
-}
-
-[numthreads(1, 1, 1)]
-void compute_main(tint_symbol_1 tint_symbol) {
-  compute_main_inner(tint_symbol.local_invocation_index);
-  return;
-}
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.msl b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.msl
deleted file mode 100644
index 0cd2c45..0000000
--- a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.msl
+++ /dev/null
@@ -1,33 +0,0 @@
-intrinsics/gen/modf/e38ae6.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_modf(float param_0, threadgroup float* param_1) {
-  float whole;
-  float fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-void modf_e38ae6(threadgroup float* const tint_symbol) {
-  float res = tint_modf(1.0f, tint_symbol);
-}
-
-void compute_main_inner(uint local_invocation_index, threadgroup float* const tint_symbol_1) {
-  {
-    *(tint_symbol_1) = float();
-  }
-  threadgroup_barrier(mem_flags::mem_threadgroup);
-  modf_e38ae6(tint_symbol_1);
-}
-
-kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) {
-  threadgroup float tint_symbol_2;
-  compute_main_inner(local_invocation_index, &(tint_symbol_2));
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm
deleted file mode 100644
index 2143769..0000000
--- a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm
+++ /dev/null
@@ -1,57 +0,0 @@
-intrinsics/gen/modf/e38ae6.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 30
-; Schema: 0
-               OpCapability Shader
-         %12 = OpExtInstImport "GLSL.std.450"
-               OpMemoryModel Logical GLSL450
-               OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
-               OpExecutionMode %compute_main LocalSize 1 1 1
-               OpName %local_invocation_index_1 "local_invocation_index_1"
-               OpName %arg_1 "arg_1"
-               OpName %modf_e38ae6 "modf_e38ae6"
-               OpName %res "res"
-               OpName %compute_main_inner "compute_main_inner"
-               OpName %local_invocation_index "local_invocation_index"
-               OpName %compute_main "compute_main"
-               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
-       %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
-      %float = OpTypeFloat 32
-%_ptr_Workgroup_float = OpTypePointer Workgroup %float
-      %arg_1 = OpVariable %_ptr_Workgroup_float Workgroup
-       %void = OpTypeVoid
-          %7 = OpTypeFunction %void
-    %float_1 = OpConstant %float 1
-%_ptr_Function_float = OpTypePointer Function %float
-         %17 = OpConstantNull %float
-         %18 = OpTypeFunction %void %uint
-     %uint_2 = OpConstant %uint 2
-   %uint_264 = OpConstant %uint 264
-%modf_e38ae6 = OpFunction %void None %7
-         %10 = OpLabel
-        %res = OpVariable %_ptr_Function_float Function %17
-         %11 = OpExtInst %float %12 Modf %float_1 %arg_1
-               OpStore %res %11
-               OpReturn
-               OpFunctionEnd
-%compute_main_inner = OpFunction %void None %18
-%local_invocation_index = OpFunctionParameter %uint
-         %21 = OpLabel
-               OpStore %arg_1 %17
-               OpControlBarrier %uint_2 %uint_2 %uint_264
-         %25 = OpFunctionCall %void %modf_e38ae6
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %7
-         %27 = OpLabel
-         %29 = OpLoad %uint %local_invocation_index_1
-         %28 = OpFunctionCall %void %compute_main_inner %29
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.wgsl b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.wgsl
deleted file mode 100644
index af186d1..0000000
--- a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.wgsl
+++ /dev/null
@@ -1,14 +0,0 @@
-intrinsics/gen/modf/e38ae6.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-var<workgroup> arg_1 : f32;
-
-fn modf_e38ae6() {
-  var res : f32 = modf(1.0, &(arg_1));
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_e38ae6();
-}
diff --git a/test/intrinsics/gen/modf/e83560.wgsl b/test/intrinsics/gen/modf/e83560.wgsl
deleted file mode 100644
index 16c6e99..0000000
--- a/test/intrinsics/gen/modf/e83560.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(vec<4, f32>, ptr<function, vec<4, f32>, read>) -> vec<4, f32>
-fn modf_e83560() {
-  var arg_1: vec4<f32>;
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_e83560();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_e83560();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_e83560();
-}
diff --git a/test/intrinsics/gen/modf/e83560.wgsl.expected.hlsl b/test/intrinsics/gen/modf/e83560.wgsl.expected.hlsl
deleted file mode 100644
index d47801b..0000000
--- a/test/intrinsics/gen/modf/e83560.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/e83560.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-void modf_e83560() {
-  float4 arg_1 = float4(0.0f, 0.0f, 0.0f, 0.0f);
-  float4 res = modf(float4(0.0f, 0.0f, 0.0f, 0.0f), arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_e83560();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_e83560();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_e83560();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/e83560.wgsl.expected.msl b/test/intrinsics/gen/modf/e83560.wgsl.expected.msl
deleted file mode 100644
index d99b55f..0000000
--- a/test/intrinsics/gen/modf/e83560.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/e83560.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float4 tint_modf(float4 param_0, thread float4* param_1) {
-  float4 whole;
-  float4 fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_e83560() {
-  float4 arg_1 = 0.0f;
-  float4 res = tint_modf(float4(), &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_e83560();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_e83560();
-  return;
-}
-
-kernel void compute_main() {
-  modf_e83560();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm b/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm
deleted file mode 100644
index 2423923..0000000
--- a/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/e83560.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_e83560 "modf_e83560"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_v4float = OpTypePointer Function %v4float
-         %19 = OpTypeFunction %v4float
-    %float_1 = OpConstant %float 1
-%modf_e83560 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_v4float Function %5
-        %res = OpVariable %_ptr_Function_v4float Function %5
-         %15 = OpExtInst %v4float %16 Modf %5 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %19
-         %21 = OpLabel
-         %22 = OpFunctionCall %void %modf_e83560
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %24 = OpLabel
-         %25 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %25
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_e83560
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_e83560
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/e83560.wgsl.expected.wgsl b/test/intrinsics/gen/modf/e83560.wgsl.expected.wgsl
deleted file mode 100644
index 719781c..0000000
--- a/test/intrinsics/gen/modf/e83560.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/e83560.wgsl:29:24 warning: use of deprecated intrinsic
-  var res: vec4<f32> = modf(vec4<f32>(), &arg_1);
-                       ^^^^
-
-fn modf_e83560() {
-  var arg_1 : vec4<f32>;
-  var res : vec4<f32> = modf(vec4<f32>(), &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_e83560();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_e83560();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_e83560();
-}
diff --git a/test/intrinsics/gen/modf/f90945.wgsl b/test/intrinsics/gen/modf/f90945.wgsl
deleted file mode 100644
index 962307b..0000000
--- a/test/intrinsics/gen/modf/f90945.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/intrinsic-gen
-// using the template:
-//   test/intrinsics/intrinsics.wgsl.tmpl
-// and the intrinsic defintion file:
-//   src/intrinsics.def
-//
-// Do not modify this file directly
-////////////////////////////////////////////////////////////////////////////////
-
-
-// fn modf(f32, ptr<function, f32, read>) -> f32
-fn modf_f90945() {
-  var arg_1: f32;
-  var res: f32 = modf(1.0, &arg_1);
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_f90945();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_f90945();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_f90945();
-}
diff --git a/test/intrinsics/gen/modf/f90945.wgsl.expected.hlsl b/test/intrinsics/gen/modf/f90945.wgsl.expected.hlsl
deleted file mode 100644
index 3150e29..0000000
--- a/test/intrinsics/gen/modf/f90945.wgsl.expected.hlsl
+++ /dev/null
@@ -1,35 +0,0 @@
-intrinsics/gen/modf/f90945.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-void modf_f90945() {
-  float arg_1 = 0.0f;
-  float res = modf(1.0f, arg_1);
-}
-
-struct tint_symbol {
-  float4 value : SV_Position;
-};
-
-float4 vertex_main_inner() {
-  modf_f90945();
-  return float4(0.0f, 0.0f, 0.0f, 0.0f);
-}
-
-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() {
-  modf_f90945();
-  return;
-}
-
-[numthreads(1, 1, 1)]
-void compute_main() {
-  modf_f90945();
-  return;
-}
diff --git a/test/intrinsics/gen/modf/f90945.wgsl.expected.msl b/test/intrinsics/gen/modf/f90945.wgsl.expected.msl
deleted file mode 100644
index 28b66fb..0000000
--- a/test/intrinsics/gen/modf/f90945.wgsl.expected.msl
+++ /dev/null
@@ -1,46 +0,0 @@
-intrinsics/gen/modf/f90945.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-#include <metal_stdlib>
-
-using namespace metal;
-
-float tint_modf(float param_0, thread float* param_1) {
-  float whole;
-  float fract = modf(param_0, whole);
-  *param_1 = whole;
-  return fract;
-}
-
-struct tint_symbol {
-  float4 value [[position]];
-};
-
-void modf_f90945() {
-  float arg_1 = 0.0f;
-  float res = tint_modf(1.0f, &(arg_1));
-}
-
-float4 vertex_main_inner() {
-  modf_f90945();
-  return float4();
-}
-
-vertex tint_symbol vertex_main() {
-  float4 const inner_result = vertex_main_inner();
-  tint_symbol wrapper_result = {};
-  wrapper_result.value = inner_result;
-  return wrapper_result;
-}
-
-fragment void fragment_main() {
-  modf_f90945();
-  return;
-}
-
-kernel void compute_main() {
-  modf_f90945();
-  return;
-}
-
diff --git a/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm b/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm
deleted file mode 100644
index 57391db..0000000
--- a/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm
+++ /dev/null
@@ -1,71 +0,0 @@
-intrinsics/gen/modf/f90945.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-; SPIR-V
-; Version: 1.3
-; Generator: Google Tint Compiler; 0
-; Bound: 33
-; Schema: 0
-               OpCapability Shader
-         %16 = 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 %modf_f90945 "modf_f90945"
-               OpName %arg_1 "arg_1"
-               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
-      %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
-       %void = OpTypeVoid
-          %9 = OpTypeFunction %void
-%_ptr_Function_float = OpTypePointer Function %float
-    %float_1 = OpConstant %float 1
-         %20 = OpTypeFunction %v4float
-%modf_f90945 = OpFunction %void None %9
-         %12 = OpLabel
-      %arg_1 = OpVariable %_ptr_Function_float Function %8
-        %res = OpVariable %_ptr_Function_float Function %8
-         %15 = OpExtInst %float %16 Modf %float_1 %arg_1
-               OpStore %res %15
-               OpReturn
-               OpFunctionEnd
-%vertex_main_inner = OpFunction %v4float None %20
-         %22 = OpLabel
-         %23 = OpFunctionCall %void %modf_f90945
-               OpReturnValue %5
-               OpFunctionEnd
-%vertex_main = OpFunction %void None %9
-         %25 = OpLabel
-         %26 = OpFunctionCall %v4float %vertex_main_inner
-               OpStore %value %26
-               OpStore %vertex_point_size %float_1
-               OpReturn
-               OpFunctionEnd
-%fragment_main = OpFunction %void None %9
-         %28 = OpLabel
-         %29 = OpFunctionCall %void %modf_f90945
-               OpReturn
-               OpFunctionEnd
-%compute_main = OpFunction %void None %9
-         %31 = OpLabel
-         %32 = OpFunctionCall %void %modf_f90945
-               OpReturn
-               OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/f90945.wgsl.expected.wgsl b/test/intrinsics/gen/modf/f90945.wgsl.expected.wgsl
deleted file mode 100644
index fb28341..0000000
--- a/test/intrinsics/gen/modf/f90945.wgsl.expected.wgsl
+++ /dev/null
@@ -1,24 +0,0 @@
-intrinsics/gen/modf/f90945.wgsl:29:18 warning: use of deprecated intrinsic
-  var res: f32 = modf(1.0, &arg_1);
-                 ^^^^
-
-fn modf_f90945() {
-  var arg_1 : f32;
-  var res : f32 = modf(1.0, &(arg_1));
-}
-
-[[stage(vertex)]]
-fn vertex_main() -> [[builtin(position)]] vec4<f32> {
-  modf_f90945();
-  return vec4<f32>();
-}
-
-[[stage(fragment)]]
-fn fragment_main() {
-  modf_f90945();
-}
-
-[[stage(compute), workgroup_size(1)]]
-fn compute_main() {
-  modf_f90945();
-}