[msl] Add polyfill for textureSampleGrad
Add a gradient builtin type to match the gradient2d, gradient3d, and
gradientcube MSL types.
Bug: 42251016
Change-Id: I46372be7490f246a44fb28d5842c8e39a3a71d89
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/193662
Reviewed-by: dan sinclair <dsinclair@chromium.org>
diff --git a/src/tint/lang/msl/intrinsic/data.cc b/src/tint/lang/msl/intrinsic/data.cc
index f6c2613..e2fce5f 100644
--- a/src/tint/lang/msl/intrinsic/data.cc
+++ b/src/tint/lang/msl/intrinsic/data.cc
@@ -599,6 +599,48 @@
};
+/// TypeMatcher for 'type gradient2d'
+constexpr TypeMatcher kGradient2DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ if (!MatchGradient2D(state, ty)) {
+ return nullptr;
+ }
+ return BuildGradient2D(state, ty);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {
+ out << style::Type("gradient2d");
+ }
+};
+
+
+/// TypeMatcher for 'type gradient3d'
+constexpr TypeMatcher kGradient3DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ if (!MatchGradient3D(state, ty)) {
+ return nullptr;
+ }
+ return BuildGradient3D(state, ty);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {
+ out << style::Type("gradient3d");
+ }
+};
+
+
+/// TypeMatcher for 'type gradientcube'
+constexpr TypeMatcher kGradientcubeMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ if (!MatchGradientcube(state, ty)) {
+ return nullptr;
+ }
+ return BuildGradientcube(state, ty);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {
+ out << style::Type("gradientcube");
+ }
+};
+
+
/// TypeMatcher for 'type level'
constexpr TypeMatcher kLevelMatcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
@@ -819,9 +861,12 @@
/* [28] */ kTextureStorage2DArrayMatcher,
/* [29] */ kTextureStorage3DMatcher,
/* [30] */ kBiasMatcher,
- /* [31] */ kLevelMatcher,
- /* [32] */ kIu32Matcher,
- /* [33] */ kFiu32Matcher,
+ /* [31] */ kGradient2DMatcher,
+ /* [32] */ kGradient3DMatcher,
+ /* [33] */ kGradientcubeMatcher,
+ /* [34] */ kLevelMatcher,
+ /* [35] */ kIu32Matcher,
+ /* [36] */ kFiu32Matcher,
};
/// The template numbers, and number matchers
@@ -971,8 +1016,8 @@
/* [128] */ MatcherIndex(6),
/* [129] */ MatcherIndex(19),
/* [130] */ MatcherIndex(6),
- /* [131] */ MatcherIndex(32),
- /* [132] */ MatcherIndex(33),
+ /* [131] */ MatcherIndex(35),
+ /* [132] */ MatcherIndex(36),
/* [133] */ MatcherIndex(20),
/* [134] */ MatcherIndex(21),
/* [135] */ MatcherIndex(22),
@@ -980,9 +1025,12 @@
/* [137] */ MatcherIndex(24),
/* [138] */ MatcherIndex(2),
/* [139] */ MatcherIndex(12),
- /* [140] */ MatcherIndex(31),
+ /* [140] */ MatcherIndex(34),
/* [141] */ MatcherIndex(30),
- /* [142] */ MatcherIndex(13),
+ /* [142] */ MatcherIndex(31),
+ /* [143] */ MatcherIndex(32),
+ /* [144] */ MatcherIndex(33),
+ /* [145] */ MatcherIndex(13),
};
static_assert(MatcherIndicesIndex::CanIndex(kMatcherIndices),
@@ -997,7 +1045,7 @@
{
/* [1] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
+ /* matcher_indices */ MatcherIndicesIndex(145),
},
{
/* [2] */
@@ -1117,12 +1165,12 @@
{
/* [25] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(134),
+ /* matcher_indices */ MatcherIndicesIndex(121),
},
{
/* [26] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
+ /* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [27] */
@@ -1136,8 +1184,8 @@
},
{
/* [29] */
- /* usage */ core::ParameterUsage::kDepthRef,
- /* matcher_indices */ MatcherIndicesIndex(6),
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(142),
},
{
/* [30] */
@@ -1147,12 +1195,12 @@
{
/* [31] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(133),
+ /* matcher_indices */ MatcherIndicesIndex(134),
},
{
/* [32] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
+ /* matcher_indices */ MatcherIndicesIndex(145),
},
{
/* [33] */
@@ -1161,13 +1209,13 @@
},
{
/* [34] */
- /* usage */ core::ParameterUsage::kDepthRef,
- /* matcher_indices */ MatcherIndicesIndex(6),
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [35] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
+ /* usage */ core::ParameterUsage::kDepthRef,
+ /* matcher_indices */ MatcherIndicesIndex(6),
},
{
/* [36] */
@@ -1177,177 +1225,177 @@
{
/* [37] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(136),
+ /* matcher_indices */ MatcherIndicesIndex(133),
},
{
/* [38] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
+ /* matcher_indices */ MatcherIndicesIndex(145),
},
{
/* [39] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
+ /* matcher_indices */ MatcherIndicesIndex(117),
},
{
/* [40] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [41] */
/* usage */ core::ParameterUsage::kDepthRef,
/* matcher_indices */ MatcherIndicesIndex(6),
},
{
- /* [42] */
+ /* [41] */
/* usage */ core::ParameterUsage::kLevel,
/* matcher_indices */ MatcherIndicesIndex(140),
},
{
+ /* [42] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
+ },
+ {
/* [43] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(136),
+ },
+ {
+ /* [44] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(145),
+ },
+ {
+ /* [45] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [46] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
+ },
+ {
+ /* [47] */
+ /* usage */ core::ParameterUsage::kDepthRef,
+ /* matcher_indices */ MatcherIndicesIndex(6),
+ },
+ {
+ /* [48] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [49] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(0),
},
{
- /* [44] */
+ /* [50] */
/* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(5),
},
{
- /* [45] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [46] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [47] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [48] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(121),
- },
- {
- /* [49] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [50] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
/* [51] */
- /* usage */ core::ParameterUsage::kArrayIndex,
+ /* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [52] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [53] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [54] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(121),
+ },
+ {
+ /* [55] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [56] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
+ /* [57] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
+ },
+ {
+ /* [58] */
/* usage */ core::ParameterUsage::kOffset,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
- /* [53] */
+ /* [59] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(134),
},
{
- /* [54] */
+ /* [60] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [55] */
+ /* [61] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(117),
},
{
- /* [56] */
+ /* [62] */
/* usage */ core::ParameterUsage::kArrayIndex,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
- /* [57] */
+ /* [63] */
/* usage */ core::ParameterUsage::kOffset,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
- /* [58] */
+ /* [64] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(115),
},
{
- /* [59] */
+ /* [65] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [60] */
+ /* [66] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(117),
},
{
- /* [61] */
+ /* [67] */
/* usage */ core::ParameterUsage::kLevel,
/* matcher_indices */ MatcherIndicesIndex(140),
},
{
- /* [62] */
+ /* [68] */
/* usage */ core::ParameterUsage::kOffset,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
- /* [63] */
+ /* [69] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(123),
},
{
- /* [64] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [65] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
- },
- {
- /* [66] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
- },
- {
- /* [67] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(22),
- },
- {
- /* [68] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(129),
- },
- {
- /* [69] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
/* [70] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
},
{
/* [71] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
},
{
/* [72] */
@@ -1356,493 +1404,493 @@
},
{
/* [73] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(133),
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(22),
},
{
/* [74] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(129),
},
{
/* [75] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
- /* [76] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
- },
- {
- /* [77] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(119),
- },
- {
- /* [78] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(136),
- },
- {
- /* [79] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [80] */
+ /* [76] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(125),
},
{
- /* [81] */
+ /* [77] */
/* usage */ core::ParameterUsage::kArrayIndex,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
+ /* [78] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [79] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(133),
+ },
+ {
+ /* [80] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [81] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
/* [82] */
/* usage */ core::ParameterUsage::kLevel,
/* matcher_indices */ MatcherIndicesIndex(140),
},
{
/* [83] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(115),
- },
- {
- /* [84] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [85] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
- /* [86] */
- /* usage */ core::ParameterUsage::kBias,
- /* matcher_indices */ MatcherIndicesIndex(141),
- },
- {
- /* [87] */
/* usage */ core::ParameterUsage::kOffset,
/* matcher_indices */ MatcherIndicesIndex(119),
},
{
- /* [88] */
+ /* [84] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(123),
+ /* matcher_indices */ MatcherIndicesIndex(136),
},
{
- /* [89] */
+ /* [85] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [90] */
+ /* [86] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(125),
},
{
+ /* [87] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
+ },
+ {
+ /* [88] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [89] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(115),
+ },
+ {
+ /* [90] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
/* [91] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
+ /* [92] */
/* usage */ core::ParameterUsage::kBias,
/* matcher_indices */ MatcherIndicesIndex(141),
},
{
- /* [92] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(22),
- },
- {
/* [93] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(129),
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
},
{
/* [94] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(123),
+ },
+ {
+ /* [95] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [95] */
+ /* [96] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(125),
},
{
- /* [96] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
/* [97] */
/* usage */ core::ParameterUsage::kBias,
/* matcher_indices */ MatcherIndicesIndex(141),
},
{
/* [98] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(133),
- },
- {
- /* [99] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
- },
- {
- /* [100] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
- /* [101] */
- /* usage */ core::ParameterUsage::kDepthRef,
- /* matcher_indices */ MatcherIndicesIndex(6),
- },
- {
- /* [102] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(119),
- },
- {
- /* [103] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(135),
- },
- {
- /* [104] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(142),
- },
- {
- /* [105] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
- },
- {
- /* [106] */
- /* usage */ core::ParameterUsage::kDepthRef,
- /* matcher_indices */ MatcherIndicesIndex(6),
- },
- {
- /* [107] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
- },
- {
- /* [108] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(97),
- },
- {
- /* [109] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [110] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(1),
- },
- {
- /* [111] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(138),
- },
- {
- /* [112] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(134),
- },
- {
- /* [113] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [114] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [115] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(1),
- },
- {
- /* [116] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(115),
- },
- {
- /* [117] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [118] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
- /* [119] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(119),
- },
- {
- /* [120] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(123),
- },
- {
- /* [121] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [122] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
- },
- {
- /* [123] */
/* usage */ core::ParameterUsage::kOffset,
/* matcher_indices */ MatcherIndicesIndex(22),
},
{
- /* [124] */
+ /* [99] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(133),
+ /* matcher_indices */ MatcherIndicesIndex(129),
},
{
- /* [125] */
+ /* [100] */
/* usage */ core::ParameterUsage::kSampler,
/* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [126] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(117),
- },
- {
- /* [127] */
- /* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(119),
- },
- {
- /* [128] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(127),
- },
- {
- /* [129] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [130] */
+ /* [101] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(125),
},
{
- /* [131] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
+ /* [102] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
- /* [132] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(135),
- },
- {
- /* [133] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [134] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
- },
- {
- /* [135] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(140),
- },
- {
- /* [136] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(127),
- },
- {
- /* [137] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
- },
- {
- /* [138] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(125),
- },
- {
- /* [139] */
+ /* [103] */
/* usage */ core::ParameterUsage::kBias,
/* matcher_indices */ MatcherIndicesIndex(141),
},
{
- /* [140] */
+ /* [104] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(63),
+ /* matcher_indices */ MatcherIndicesIndex(115),
},
{
- /* [141] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(111),
+ /* [105] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
},
{
- /* [142] */
+ /* [106] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
+ /* matcher_indices */ MatcherIndicesIndex(117),
},
{
- /* [143] */
+ /* [107] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(142),
+ },
+ {
+ /* [108] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
+ },
+ {
+ /* [109] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(123),
+ },
+ {
+ /* [110] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [111] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [112] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(143),
+ },
+ {
+ /* [113] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(22),
+ },
+ {
+ /* [114] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(129),
+ },
+ {
+ /* [115] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [116] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [117] */
/* usage */ core::ParameterUsage::kArrayIndex,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
- /* [144] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(75),
- },
- {
- /* [145] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(34),
- },
- {
- /* [146] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [147] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [148] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(87),
- },
- {
- /* [149] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(70),
- },
- {
- /* [150] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [151] */
- /* usage */ core::ParameterUsage::kArrayIndex,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [152] */
+ /* [118] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(0),
+ /* matcher_indices */ MatcherIndicesIndex(144),
},
{
- /* [153] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(3),
- },
- {
- /* [154] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [155] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(95),
- },
- {
- /* [156] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [157] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(1),
- },
- {
- /* [158] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(99),
- },
- {
- /* [159] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(58),
- },
- {
- /* [160] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(1),
- },
- {
- /* [161] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(105),
- },
- {
- /* [162] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
- },
- {
- /* [163] */
- /* usage */ core::ParameterUsage::kSampleIndex,
- /* matcher_indices */ MatcherIndicesIndex(1),
- },
- {
- /* [164] */
+ /* [119] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(133),
},
{
- /* [165] */
+ /* [120] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(145),
+ },
+ {
+ /* [121] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
+ /* [122] */
+ /* usage */ core::ParameterUsage::kDepthRef,
+ /* matcher_indices */ MatcherIndicesIndex(6),
+ },
+ {
+ /* [123] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
+ },
+ {
+ /* [124] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(135),
+ },
+ {
+ /* [125] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(145),
+ },
+ {
+ /* [126] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [127] */
+ /* usage */ core::ParameterUsage::kDepthRef,
+ /* matcher_indices */ MatcherIndicesIndex(6),
+ },
+ {
+ /* [128] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [129] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(97),
+ },
+ {
+ /* [130] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
+ /* [131] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(1),
+ },
+ {
+ /* [132] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(138),
+ },
+ {
+ /* [133] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(134),
+ },
+ {
+ /* [134] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(109),
+ },
+ {
+ /* [135] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
+ },
+ {
+ /* [136] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(1),
+ },
+ {
+ /* [137] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(115),
+ },
+ {
+ /* [138] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [139] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
+ /* [140] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
+ },
+ {
+ /* [141] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(123),
+ },
+ {
+ /* [142] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [143] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [144] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(22),
+ },
+ {
+ /* [145] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(133),
+ },
+ {
+ /* [146] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [147] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(117),
+ },
+ {
+ /* [148] */
+ /* usage */ core::ParameterUsage::kOffset,
+ /* matcher_indices */ MatcherIndicesIndex(119),
+ },
+ {
+ /* [149] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(127),
+ },
+ {
+ /* [150] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [151] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [152] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [153] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(135),
+ },
+ {
+ /* [154] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [155] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [156] */
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(140),
+ },
+ {
+ /* [157] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(127),
+ },
+ {
+ /* [158] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [159] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [160] */
+ /* usage */ core::ParameterUsage::kBias,
+ /* matcher_indices */ MatcherIndicesIndex(141),
+ },
+ {
+ /* [161] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(127),
+ },
+ {
+ /* [162] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [163] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(125),
+ },
+ {
+ /* [164] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(144),
+ },
+ {
+ /* [165] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(63),
+ },
+ {
/* [166] */
- /* usage */ core::ParameterUsage::kLevel,
- /* matcher_indices */ MatcherIndicesIndex(3),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(111),
},
{
/* [167] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(137),
- },
- {
- /* [168] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [169] */
- /* usage */ core::ParameterUsage::kSampleIndex,
+ /* [168] */
+ /* usage */ core::ParameterUsage::kArrayIndex,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
- /* [170] */
+ /* [169] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(27),
+ /* matcher_indices */ MatcherIndicesIndex(75),
+ },
+ {
+ /* [170] */
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [171] */
@@ -1857,72 +1905,72 @@
{
/* [173] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(39),
+ /* matcher_indices */ MatcherIndicesIndex(87),
},
{
/* [174] */
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(70),
+ },
+ {
+ /* [175] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [175] */
+ /* [176] */
/* usage */ core::ParameterUsage::kArrayIndex,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
- /* [176] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(51),
- },
- {
/* [177] */
- /* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(109),
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(0),
},
{
/* [178] */
- /* usage */ core::ParameterUsage::kArrayIndex,
+ /* usage */ core::ParameterUsage::kNone,
/* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [179] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(113),
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
},
{
/* [180] */
- /* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(139),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(95),
},
{
/* [181] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(6),
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [182] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(57),
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [183] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(111),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(99),
},
{
/* [184] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [185] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(60),
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [186] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(111),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(105),
},
{
/* [187] */
@@ -1931,43 +1979,43 @@
},
{
/* [188] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(66),
+ /* usage */ core::ParameterUsage::kSampleIndex,
+ /* matcher_indices */ MatcherIndicesIndex(1),
},
{
/* [189] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(111),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(133),
},
{
/* [190] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(58),
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [191] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(69),
+ /* usage */ core::ParameterUsage::kLevel,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [192] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(34),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(137),
},
{
/* [193] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [194] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(72),
+ /* usage */ core::ParameterUsage::kSampleIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [195] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(34),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(27),
},
{
/* [196] */
@@ -1976,296 +2024,421 @@
},
{
/* [197] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(78),
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [198] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(34),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(39),
},
{
/* [199] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(58),
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [200] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(81),
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [201] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(70),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(51),
},
{
/* [202] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [203] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(84),
+ /* usage */ core::ParameterUsage::kArrayIndex,
+ /* matcher_indices */ MatcherIndicesIndex(3),
},
{
/* [204] */
- /* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(70),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(113),
},
{
/* [205] */
+ /* usage */ core::ParameterUsage::kSampler,
+ /* matcher_indices */ MatcherIndicesIndex(139),
+ },
+ {
+ /* [206] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(6),
+ },
+ {
+ /* [207] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(57),
+ },
+ {
+ /* [208] */
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(111),
+ },
+ {
+ /* [209] */
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [210] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(60),
+ },
+ {
+ /* [211] */
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(111),
+ },
+ {
+ /* [212] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [206] */
+ /* [213] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(90),
+ /* matcher_indices */ MatcherIndicesIndex(66),
},
{
- /* [207] */
+ /* [214] */
/* usage */ core::ParameterUsage::kValue,
- /* matcher_indices */ MatcherIndicesIndex(70),
+ /* matcher_indices */ MatcherIndicesIndex(111),
},
{
- /* [208] */
+ /* [215] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(58),
},
{
- /* [209] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(0),
- },
- {
- /* [210] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [211] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(95),
- },
- {
- /* [212] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [213] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(97),
- },
- {
- /* [214] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
- },
- {
- /* [215] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(99),
- },
- {
/* [216] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(69),
},
{
/* [217] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(101),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [218] */
- /* usage */ core::ParameterUsage::kNone,
+ /* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(59),
},
{
/* [219] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(103),
+ /* matcher_indices */ MatcherIndicesIndex(72),
},
{
/* [220] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [221] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(133),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [222] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(78),
},
{
/* [223] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(134),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(34),
},
{
/* [224] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [225] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(135),
+ /* matcher_indices */ MatcherIndicesIndex(81),
},
{
/* [226] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(70),
},
{
/* [227] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(136),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(59),
},
{
/* [228] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(84),
},
{
/* [229] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(12),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(70),
},
{
/* [230] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(109),
},
{
/* [231] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(15),
+ /* matcher_indices */ MatcherIndicesIndex(90),
},
{
/* [232] */
- /* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* usage */ core::ParameterUsage::kValue,
+ /* matcher_indices */ MatcherIndicesIndex(70),
},
{
/* [233] */
- /* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(18),
+ /* usage */ core::ParameterUsage::kCoords,
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [234] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(59),
+ /* matcher_indices */ MatcherIndicesIndex(0),
},
{
/* [235] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [236] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(95),
+ },
+ {
+ /* [237] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [238] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(97),
+ },
+ {
+ /* [239] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [240] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(99),
+ },
+ {
+ /* [241] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [242] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(101),
+ },
+ {
+ /* [243] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [244] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(103),
+ },
+ {
+ /* [245] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [246] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(133),
+ },
+ {
+ /* [247] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [248] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(134),
+ },
+ {
+ /* [249] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [250] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(135),
+ },
+ {
+ /* [251] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [252] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(136),
+ },
+ {
+ /* [253] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [254] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(12),
+ },
+ {
+ /* [255] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [256] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(15),
+ },
+ {
+ /* [257] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [258] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(18),
+ },
+ {
+ /* [259] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ },
+ {
+ /* [260] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(93),
},
{
- /* [236] */
+ /* [261] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(59),
},
{
- /* [237] */
+ /* [262] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(21),
},
{
- /* [238] */
+ /* [263] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(59),
},
{
- /* [239] */
+ /* [264] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(24),
},
{
- /* [240] */
+ /* [265] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [241] */
+ /* [266] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(30),
},
{
- /* [242] */
+ /* [267] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(58),
},
{
- /* [243] */
+ /* [268] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(33),
},
{
- /* [244] */
+ /* [269] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(59),
},
{
- /* [245] */
+ /* [270] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(36),
},
{
- /* [246] */
+ /* [271] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [247] */
+ /* [272] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(42),
},
{
- /* [248] */
+ /* [273] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(58),
},
{
- /* [249] */
+ /* [274] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(45),
},
{
- /* [250] */
+ /* [275] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(59),
},
{
- /* [251] */
+ /* [276] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(48),
},
{
- /* [252] */
+ /* [277] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(109),
},
{
- /* [253] */
+ /* [278] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(54),
},
{
- /* [254] */
+ /* [279] */
/* usage */ core::ParameterUsage::kCoords,
/* matcher_indices */ MatcherIndicesIndex(58),
},
{
- /* [255] */
+ /* [280] */
/* usage */ core::ParameterUsage::kTexture,
/* matcher_indices */ MatcherIndicesIndex(9),
},
@@ -2354,7 +2527,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(179),
+ /* parameters */ ParameterIndex(204),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2365,7 +2538,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(58),
+ /* parameters */ ParameterIndex(64),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2376,7 +2549,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(116),
+ /* parameters */ ParameterIndex(137),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2398,7 +2571,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(48),
+ /* parameters */ ParameterIndex(54),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2409,7 +2582,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(63),
+ /* parameters */ ParameterIndex(69),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2420,7 +2593,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(120),
+ /* parameters */ ParameterIndex(141),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2431,7 +2604,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(128),
+ /* parameters */ ParameterIndex(149),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2442,7 +2615,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(68),
+ /* parameters */ ParameterIndex(74),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2453,7 +2626,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(73),
+ /* parameters */ ParameterIndex(79),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2464,7 +2637,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(124),
+ /* parameters */ ParameterIndex(145),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2486,7 +2659,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(53),
+ /* parameters */ ParameterIndex(59),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2497,7 +2670,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(132),
+ /* parameters */ ParameterIndex(153),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2508,7 +2681,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(78),
+ /* parameters */ ParameterIndex(84),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2519,7 +2692,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(58),
+ /* parameters */ ParameterIndex(64),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2530,7 +2703,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(58),
+ /* parameters */ ParameterIndex(64),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2563,7 +2736,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(63),
+ /* parameters */ ParameterIndex(69),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2574,7 +2747,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(63),
+ /* parameters */ ParameterIndex(69),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2585,7 +2758,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(128),
+ /* parameters */ ParameterIndex(149),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2596,7 +2769,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(68),
+ /* parameters */ ParameterIndex(74),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2607,7 +2780,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(73),
+ /* parameters */ ParameterIndex(79),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2618,7 +2791,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(73),
+ /* parameters */ ParameterIndex(79),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2651,7 +2824,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(132),
+ /* parameters */ ParameterIndex(153),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2662,7 +2835,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(78),
+ /* parameters */ ParameterIndex(84),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2673,7 +2846,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(83),
+ /* parameters */ ParameterIndex(89),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2684,7 +2857,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(83),
+ /* parameters */ ParameterIndex(89),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2717,7 +2890,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(88),
+ /* parameters */ ParameterIndex(94),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2728,7 +2901,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(88),
+ /* parameters */ ParameterIndex(94),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2739,7 +2912,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(136),
+ /* parameters */ ParameterIndex(157),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -2750,74 +2923,74 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(93),
+ /* parameters */ ParameterIndex(99),
/* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [37] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(235),
- /* return_matcher_indices */ MatcherIndicesIndex(107),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(104),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [38] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 5,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(7),
- /* parameters */ ParameterIndex(155),
- /* return_matcher_indices */ MatcherIndicesIndex(107),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(104),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [39] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 4,
+ /* num_parameters */ 5,
/* num_explicit_templates */ 0,
- /* num_templates */ 3,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(108),
- /* return_matcher_indices */ MatcherIndicesIndex(107),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(25),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [40] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 6,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(7),
- /* parameters */ ParameterIndex(158),
- /* return_matcher_indices */ MatcherIndicesIndex(107),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(25),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [41] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(9),
- /* parameters */ ParameterIndex(161),
- /* return_matcher_indices */ MatcherIndicesIndex(107),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(109),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [42] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 5,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(2),
- /* parameters */ ParameterIndex(164),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(109),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2825,21 +2998,21 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(112),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(161),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [44] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 5,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(10),
- /* parameters */ ParameterIndex(167),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(114),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2847,87 +3020,87 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(237),
- /* return_matcher_indices */ MatcherIndicesIndex(111),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(260),
+ /* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [46] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(239),
- /* return_matcher_indices */ MatcherIndicesIndex(111),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(7),
+ /* parameters */ ParameterIndex(180),
+ /* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [47] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(170),
- /* return_matcher_indices */ MatcherIndicesIndex(111),
+ /* num_templates */ 3,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(129),
+ /* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [48] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(241),
- /* return_matcher_indices */ MatcherIndicesIndex(111),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(7),
+ /* parameters */ ParameterIndex(183),
+ /* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [49] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(243),
- /* return_matcher_indices */ MatcherIndicesIndex(34),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(9),
+ /* parameters */ ParameterIndex(186),
+ /* return_matcher_indices */ MatcherIndicesIndex(107),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [50] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(245),
- /* return_matcher_indices */ MatcherIndicesIndex(34),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(189),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [51] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
+ /* num_templates */ 2,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(173),
- /* return_matcher_indices */ MatcherIndicesIndex(34),
+ /* parameters */ ParameterIndex(133),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [52] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(247),
- /* return_matcher_indices */ MatcherIndicesIndex(34),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(10),
+ /* parameters */ ParameterIndex(192),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2937,8 +3110,8 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(249),
- /* return_matcher_indices */ MatcherIndicesIndex(70),
+ /* parameters */ ParameterIndex(262),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2948,8 +3121,8 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(251),
- /* return_matcher_indices */ MatcherIndicesIndex(70),
+ /* parameters */ ParameterIndex(264),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2959,8 +3132,8 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(176),
- /* return_matcher_indices */ MatcherIndicesIndex(70),
+ /* parameters */ ParameterIndex(195),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2970,19 +3143,19 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(253),
- /* return_matcher_indices */ MatcherIndicesIndex(70),
+ /* parameters */ ParameterIndex(266),
+ /* return_matcher_indices */ MatcherIndicesIndex(111),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [57] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(235),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(268),
+ /* return_matcher_indices */ MatcherIndicesIndex(34),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -2990,21 +3163,21 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(211),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(270),
+ /* return_matcher_indices */ MatcherIndicesIndex(34),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [59] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(213),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(198),
+ /* return_matcher_indices */ MatcherIndicesIndex(34),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3012,10 +3185,10 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(215),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(272),
+ /* return_matcher_indices */ MatcherIndicesIndex(34),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3023,10 +3196,10 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(217),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(274),
+ /* return_matcher_indices */ MatcherIndicesIndex(70),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3034,21 +3207,21 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(219),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(276),
+ /* return_matcher_indices */ MatcherIndicesIndex(70),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [63] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(161),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(201),
+ /* return_matcher_indices */ MatcherIndicesIndex(70),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3058,18 +3231,18 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(221),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* parameters */ ParameterIndex(278),
+ /* return_matcher_indices */ MatcherIndicesIndex(70),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [65] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(223),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3078,9 +3251,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(225),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(236),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3089,31 +3262,31 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(227),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(238),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [68] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(167),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(240),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [69] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(255),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(242),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3122,20 +3295,20 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(229),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(244),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [71] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(231),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(186),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3144,9 +3317,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(233),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(246),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3155,9 +3328,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(211),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(248),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3166,9 +3339,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(213),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(250),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3177,42 +3350,42 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(215),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(252),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [76] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(217),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(192),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [77] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(219),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(280),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [78] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(161),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(254),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3221,9 +3394,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(221),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(256),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3232,9 +3405,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(223),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(258),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3243,9 +3416,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(225),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(236),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3254,20 +3427,20 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(227),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(238),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [83] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(167),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(240),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3276,9 +3449,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(229),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(242),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3287,113 +3460,201 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(231),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(244),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [86] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(233),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(186),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [87] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 4,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(31),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* parameters */ ParameterIndex(246),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [88] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 5,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(98),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* parameters */ ParameterIndex(248),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [89] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 5,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(0),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(250),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [90] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 6,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(25),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(252),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [91] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 4,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(103),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* parameters */ ParameterIndex(192),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [92] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 5,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(37),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(254),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [93] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 5,
+ /* num_parameters */ 2,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(31),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(256),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [94] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 6,
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(258),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [95] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(37),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [96] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 5,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(119),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [97] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 5,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(0),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [98] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 6,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
/* parameters */ ParameterIndex(31),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [95] */
+ /* [99] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 4,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(124),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [100] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 5,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(43),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [101] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 5,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(37),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [102] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 6,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(37),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [103] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 6,
/* num_explicit_templates */ 0,
@@ -3404,7 +3665,7 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [96] */
+ /* [104] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 7,
/* num_explicit_templates */ 0,
@@ -3415,113 +3676,25 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [97] */
+ /* [105] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 5,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(103),
+ /* parameters */ ParameterIndex(124),
/* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [98] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 6,
- /* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(37),
- /* return_matcher_indices */ MatcherIndicesIndex(6),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [99] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
- /* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(182),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [100] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
- /* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(185),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [101] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 4,
- /* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(140),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [102] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
- /* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(188),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [103] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
- /* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(191),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [104] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
- /* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(194),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
- /* [105] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 4,
- /* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(144),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
/* [106] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 3,
+ /* num_parameters */ 6,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(197),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(43),
+ /* return_matcher_indices */ MatcherIndicesIndex(6),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3531,7 +3704,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(200),
+ /* parameters */ ParameterIndex(207),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3542,7 +3715,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(203),
+ /* parameters */ ParameterIndex(210),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3553,7 +3726,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(1),
- /* parameters */ ParameterIndex(148),
+ /* parameters */ ParameterIndex(165),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3564,96 +3737,96 @@
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(206),
+ /* parameters */ ParameterIndex(213),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [111] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(235),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(216),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [112] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(155),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(219),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [113] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(108),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(169),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [114] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(158),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(222),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [115] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(217),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(225),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [116] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(219),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(228),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [117] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 4,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(31),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(1),
+ /* parameters */ ParameterIndex(173),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [118] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
+ /* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(0),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* parameters */ ParameterIndex(231),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3661,9 +3834,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(103),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(260),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3672,9 +3845,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(37),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(180),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3685,7 +3858,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(108),
+ /* parameters */ ParameterIndex(129),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3696,7 +3869,7 @@
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(219),
+ /* parameters */ ParameterIndex(183),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3705,9 +3878,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(0),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(242),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3716,6 +3889,17 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(244),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [125] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(37),
@@ -3723,25 +3907,14 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [125] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 1,
- /* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(231),
- /* return_matcher_indices */ MatcherIndicesIndex(59),
- /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
- },
- {
/* [126] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(255),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(0),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3749,10 +3922,10 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(229),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(124),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3760,10 +3933,10 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(231),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(43),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
@@ -3771,31 +3944,31 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(233),
- /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(129),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [130] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
/* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(215),
+ /* parameters */ ParameterIndex(244),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [131] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
- /* num_parameters */ 2,
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 2,
- /* templates */ TemplateIndex(5),
- /* parameters */ ParameterIndex(233),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(0),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3804,9 +3977,9 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 1,
- /* templates */ TemplateIndex(0),
- /* parameters */ ParameterIndex(161),
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(43),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3815,64 +3988,152 @@
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
- /* num_templates */ 0,
- /* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(167),
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(256),
/* return_matcher_indices */ MatcherIndicesIndex(59),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [134] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
- /* num_parameters */ 5,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 2,
- /* templates */ TemplateIndex(3),
- /* parameters */ ParameterIndex(43),
- /* return_matcher_indices */ MatcherIndicesIndex(4),
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(280),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [135] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
- /* num_parameters */ 3,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 2,
- /* templates */ TemplateIndex(3),
- /* parameters */ ParameterIndex(152),
- /* return_matcher_indices */ MatcherIndicesIndex(3),
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(254),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [136] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
- /* num_parameters */ 2,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 2,
- /* templates */ TemplateIndex(3),
- /* parameters */ ParameterIndex(209),
- /* return_matcher_indices */ MatcherIndicesIndex(3),
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(256),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [137] */
- /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
- /* num_parameters */ 3,
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 2,
- /* templates */ TemplateIndex(3),
- /* parameters */ ParameterIndex(152),
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(258),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
/* [138] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(240),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [139] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(5),
+ /* parameters */ ParameterIndex(258),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [140] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(0),
+ /* parameters */ ParameterIndex(186),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [141] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 0,
+ /* templates */ TemplateIndex(/* invalid */),
+ /* parameters */ ParameterIndex(192),
+ /* return_matcher_indices */ MatcherIndicesIndex(59),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [142] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
+ /* num_parameters */ 5,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(3),
+ /* parameters */ ParameterIndex(49),
+ /* return_matcher_indices */ MatcherIndicesIndex(4),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [143] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
+ /* num_parameters */ 3,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(3),
+ /* parameters */ ParameterIndex(177),
+ /* return_matcher_indices */ MatcherIndicesIndex(3),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [144] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(3),
+ /* parameters */ ParameterIndex(234),
+ /* return_matcher_indices */ MatcherIndicesIndex(3),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [145] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
+ /* num_parameters */ 3,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(3),
+ /* parameters */ ParameterIndex(177),
+ /* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [146] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
- /* parameters */ ParameterIndex(46),
+ /* parameters */ ParameterIndex(52),
/* return_matcher_indices */ MatcherIndicesIndex(/* invalid */),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
@@ -3886,67 +4147,67 @@
/* [0] */
/* fn atomic_compare_exchange_weak_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, ptr<function, T, read_write>, T, u32, u32) -> bool */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(134),
+ /* overloads */ OverloadIndex(142),
},
{
/* [1] */
/* fn atomic_exchange_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [2] */
/* fn atomic_fetch_add_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [3] */
/* fn atomic_fetch_and_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [4] */
/* fn atomic_fetch_max_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [5] */
/* fn atomic_fetch_min_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [6] */
/* fn atomic_fetch_or_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [7] */
/* fn atomic_fetch_sub_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [8] */
/* fn atomic_fetch_xor_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(135),
+ /* overloads */ OverloadIndex(143),
},
{
/* [9] */
/* fn atomic_load_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(136),
+ /* overloads */ OverloadIndex(144),
},
{
/* [10] */
/* fn atomic_store_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(137),
+ /* overloads */ OverloadIndex(145),
},
{
/* [11] */
@@ -3955,7 +4216,7 @@
/* fn fence[F : texel_format, A : access](texture: texture_storage_2d_array<F, A>) */
/* fn fence[F : texel_format, A : access](texture: texture_storage_3d<F, A>) */
/* num overloads */ 4,
- /* overloads */ OverloadIndex(126),
+ /* overloads */ OverloadIndex(134),
},
{
/* [12] */
@@ -3976,7 +4237,7 @@
/* fn get_width[F : texel_format, A : access](texture: texture_storage_2d_array<F, A>, u32) -> u32 */
/* fn get_width[F : texel_format, A : access](texture: texture_storage_3d<F, A>, u32) -> u32 */
/* num overloads */ 16,
- /* overloads */ OverloadIndex(57),
+ /* overloads */ OverloadIndex(65),
},
{
/* [13] */
@@ -3995,14 +4256,14 @@
/* fn get_height[F : texel_format, A : access](texture: texture_storage_2d_array<F, A>, u32) -> u32 */
/* fn get_height[F : texel_format, A : access](texture: texture_storage_3d<F, A>, u32) -> u32 */
/* num overloads */ 14,
- /* overloads */ OverloadIndex(73),
+ /* overloads */ OverloadIndex(81),
},
{
/* [14] */
/* fn get_depth[T : fiu32](texture: texture_3d<T>, u32) -> u32 */
/* fn get_depth[F : texel_format, A : access](texture: texture_storage_3d<F, A>, u32) -> u32 */
/* num overloads */ 2,
- /* overloads */ OverloadIndex(130),
+ /* overloads */ OverloadIndex(138),
},
{
/* [15] */
@@ -4012,7 +4273,7 @@
/* fn get_array_size(texture: texture_depth_cube_array) -> u32 */
/* fn get_array_size[F : texel_format, A : access](texture: texture_storage_2d_array<F, A>) -> u32 */
/* num overloads */ 5,
- /* overloads */ OverloadIndex(121),
+ /* overloads */ OverloadIndex(129),
},
{
/* [16] */
@@ -4027,14 +4288,14 @@
/* fn get_num_mip_levels(texture: texture_depth_cube) -> u32 */
/* fn get_num_mip_levels(texture: texture_depth_cube_array) -> u32 */
/* num overloads */ 10,
- /* overloads */ OverloadIndex(111),
+ /* overloads */ OverloadIndex(119),
},
{
/* [17] */
/* fn get_num_samples[T : fiu32](texture: texture_multisampled_2d<T>) -> u32 */
/* fn get_num_samples(texture: texture_depth_multisampled_2d) -> u32 */
/* num overloads */ 2,
- /* overloads */ OverloadIndex(132),
+ /* overloads */ OverloadIndex(140),
},
{
/* [18] */
@@ -4059,7 +4320,7 @@
/* fn read[A : iu32](texture: texture_storage_2d_array<u32_texel_format, readable>, coords: vec2<u32>, array_index: A) -> vec4<u32> */
/* fn read(texture: texture_storage_3d<u32_texel_format, readable>, coords: vec3<u32>) -> vec4<u32> */
/* num overloads */ 20,
- /* overloads */ OverloadIndex(37),
+ /* overloads */ OverloadIndex(45),
},
{
/* [19] */
@@ -4100,7 +4361,15 @@
/* fn sample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, bias: bias, @const offset: vec3<i32>) -> vec4<f32> */
/* fn sample(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, bias: bias) -> vec4<f32> */
/* fn sample[A : iu32](texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: A, bias: bias) -> vec4<f32> */
- /* num overloads */ 37,
+ /* fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, gradient2d) -> vec4<f32> */
+ /* fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, gradient2d, @const offset: vec2<i32>) -> vec4<f32> */
+ /* fn sample[A : iu32](texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: A, gradient2d) -> vec4<f32> */
+ /* fn sample[A : iu32](texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: A, gradient2d, @const offset: vec2<i32>) -> vec4<f32> */
+ /* fn sample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, gradient3d) -> vec4<f32> */
+ /* fn sample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, gradient3d, @const offset: vec3<i32>) -> vec4<f32> */
+ /* fn sample(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, gradientcube) -> vec4<f32> */
+ /* fn sample[A : iu32](texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: A, gradientcube) -> vec4<f32> */
+ /* num overloads */ 45,
/* overloads */ OverloadIndex(0),
},
{
@@ -4118,7 +4387,7 @@
/* fn sample_compare(texture: texture_depth_cube, sampler: sampler_comparison, coords: vec3<f32>, depth_ref: f32, level: level) -> f32 */
/* fn sample_compare[A : iu32](texture: texture_depth_cube_array, sampler: sampler_comparison, coords: vec3<f32>, array_index: A, depth_ref: f32, level: level) -> f32 */
/* num overloads */ 12,
- /* overloads */ OverloadIndex(87),
+ /* overloads */ OverloadIndex(95),
},
{
/* [21] */
@@ -4135,13 +4404,13 @@
/* fn write[A : iu32](texture: texture_storage_2d_array<u32_texel_format, writable>, value: vec4<u32>, coords: vec2<u32>, array_index: A) */
/* fn write(texture: texture_storage_3d<u32_texel_format, writable>, value: vec4<u32>, coords: vec3<u32>) */
/* num overloads */ 12,
- /* overloads */ OverloadIndex(99),
+ /* overloads */ OverloadIndex(107),
},
{
/* [22] */
/* fn threadgroup_barrier(u32) */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(138),
+ /* overloads */ OverloadIndex(146),
},
};
diff --git a/src/tint/lang/msl/intrinsic/type_matchers.h b/src/tint/lang/msl/intrinsic/type_matchers.h
index e785f3f..3228749 100644
--- a/src/tint/lang/msl/intrinsic/type_matchers.h
+++ b/src/tint/lang/msl/intrinsic/type_matchers.h
@@ -31,6 +31,7 @@
#include "src/tint/lang/core/intrinsic/table.h"
#include "src/tint/lang/core/type/manager.h"
#include "src/tint/lang/msl/type/bias.h"
+#include "src/tint/lang/msl/type/gradient.h"
#include "src/tint/lang/msl/type/level.h"
namespace tint::msl::intrinsic {
@@ -47,6 +48,42 @@
return state.types.Get<type::Bias>();
}
+inline bool MatchGradient2D(core::intrinsic::MatchState&, const core::type::Type* ty) {
+ if (auto g = ty->As<msl::type::Gradient>()) {
+ return g->Dim() == type::Gradient::Dim::k2d;
+ }
+ return false;
+}
+
+inline const core::type::Type* BuildGradient2D(core::intrinsic::MatchState& state,
+ const core::type::Type*) {
+ return state.types.Get<type::Gradient>(type::Gradient::Dim::k2d);
+}
+
+inline bool MatchGradient3D(core::intrinsic::MatchState&, const core::type::Type* ty) {
+ if (auto g = ty->As<msl::type::Gradient>()) {
+ return g->Dim() == type::Gradient::Dim::k3d;
+ }
+ return false;
+}
+
+inline const core::type::Type* BuildGradient3D(core::intrinsic::MatchState& state,
+ const core::type::Type*) {
+ return state.types.Get<type::Gradient>(type::Gradient::Dim::k3d);
+}
+
+inline bool MatchGradientcube(core::intrinsic::MatchState&, const core::type::Type* ty) {
+ if (auto g = ty->As<msl::type::Gradient>()) {
+ return g->Dim() == type::Gradient::Dim::kCube;
+ }
+ return false;
+}
+
+inline const core::type::Type* BuildGradientcube(core::intrinsic::MatchState& state,
+ const core::type::Type*) {
+ return state.types.Get<type::Gradient>(type::Gradient::Dim::kCube);
+}
+
inline bool MatchLevel(core::intrinsic::MatchState&, const core::type::Type* ty) {
if (ty->Is<msl::type::Level>()) {
return true;
diff --git a/src/tint/lang/msl/msl.def b/src/tint/lang/msl/msl.def
index 194bb01..592e68c 100644
--- a/src/tint/lang/msl/msl.def
+++ b/src/tint/lang/msl/msl.def
@@ -112,6 +112,9 @@
// sampling options types
type bias
+type gradient2d
+type gradient3d
+type gradientcube
type level
////////////////////////////////////////////////////////////////////////////////
@@ -260,6 +263,16 @@
@member_function fn sample(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, bias: bias) -> vec4<f32>
@member_function fn sample[A: iu32](texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: A, bias: bias) -> vec4<f32>
+// Sample with explicit derivatives.
+@member_function fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, gradient2d) -> vec4<f32>
+@member_function fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, gradient2d, @const offset: vec2<i32>) -> vec4<f32>
+@member_function fn sample[A: iu32](texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: A, gradient2d) -> vec4<f32>
+@member_function fn sample[A: iu32](texture: texture_2d_array<f32>, sampler: sampler, coords: vec2<f32>, array_index: A, gradient2d, @const offset: vec2<i32>) -> vec4<f32>
+@member_function fn sample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, gradient3d) -> vec4<f32>
+@member_function fn sample(texture: texture_3d<f32>, sampler: sampler, coords: vec3<f32>, gradient3d, @const offset: vec3<i32>) -> vec4<f32>
+@member_function fn sample(texture: texture_cube<f32>, sampler: sampler, coords: vec3<f32>, gradientcube) -> vec4<f32>
+@member_function fn sample[A: iu32](texture: texture_cube_array<f32>, sampler: sampler, coords: vec3<f32>, array_index: A, gradientcube) -> vec4<f32>
+
// Sample compare with implicit LOD.
@member_function @stage("fragment") fn sample_compare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32) -> f32
@member_function @stage("fragment") fn sample_compare(texture: texture_depth_2d, sampler: sampler_comparison, coords: vec2<f32>, depth_ref: f32, @const offset: vec2<i32>) -> f32
diff --git a/src/tint/lang/msl/type/BUILD.bazel b/src/tint/lang/msl/type/BUILD.bazel
index 2b09c40..4bb1002 100644
--- a/src/tint/lang/msl/type/BUILD.bazel
+++ b/src/tint/lang/msl/type/BUILD.bazel
@@ -40,10 +40,12 @@
name = "type",
srcs = [
"bias.cc",
+ "gradient.cc",
"level.cc",
],
hdrs = [
"bias.h",
+ "gradient.h",
"level.h",
],
deps = [
@@ -71,6 +73,7 @@
alwayslink = True,
srcs = [
"bias_test.cc",
+ "gradient_test.cc",
"level_test.cc",
],
deps = [
diff --git a/src/tint/lang/msl/type/BUILD.cmake b/src/tint/lang/msl/type/BUILD.cmake
index 4176d885..2341282 100644
--- a/src/tint/lang/msl/type/BUILD.cmake
+++ b/src/tint/lang/msl/type/BUILD.cmake
@@ -41,6 +41,8 @@
tint_add_target(tint_lang_msl_type lib
lang/msl/type/bias.cc
lang/msl/type/bias.h
+ lang/msl/type/gradient.cc
+ lang/msl/type/gradient.h
lang/msl/type/level.cc
lang/msl/type/level.h
)
@@ -69,6 +71,7 @@
################################################################################
tint_add_target(tint_lang_msl_type_test test
lang/msl/type/bias_test.cc
+ lang/msl/type/gradient_test.cc
lang/msl/type/level_test.cc
)
diff --git a/src/tint/lang/msl/type/BUILD.gn b/src/tint/lang/msl/type/BUILD.gn
index fb20c8d..33a443f 100644
--- a/src/tint/lang/msl/type/BUILD.gn
+++ b/src/tint/lang/msl/type/BUILD.gn
@@ -46,6 +46,8 @@
sources = [
"bias.cc",
"bias.h",
+ "gradient.cc",
+ "gradient.h",
"level.cc",
"level.h",
]
@@ -71,6 +73,7 @@
tint_unittests_source_set("unittests") {
sources = [
"bias_test.cc",
+ "gradient_test.cc",
"level_test.cc",
]
deps = [
diff --git a/src/tint/lang/msl/type/gradient.cc b/src/tint/lang/msl/type/gradient.cc
new file mode 100644
index 0000000..b4a0618
--- /dev/null
+++ b/src/tint/lang/msl/type/gradient.cc
@@ -0,0 +1,77 @@
+// Copyright 2024 The Dawn & Tint Authors
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice, this
+// list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+// this list of conditions and the following disclaimer in the documentation
+// and/or other materials provided with the distribution.
+//
+// 3. Neither the name of the copyright holder nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#include "src/tint/lang/msl/type/gradient.h"
+
+#include <cstddef>
+#include <string>
+
+#include "src/tint/lang/core/type/clone_context.h"
+#include "src/tint/lang/core/type/manager.h"
+#include "src/tint/lang/core/type/unique_node.h"
+#include "src/tint/utils/math/hash.h"
+#include "src/tint/utils/rtti/castable.h"
+#include "src/tint/utils/text/string_stream.h"
+
+TINT_INSTANTIATE_TYPEINFO(tint::msl::type::Gradient);
+
+namespace tint::msl::type {
+
+Gradient::Gradient(enum Dim dim)
+ : Base(static_cast<size_t>(Hash(tint::TypeCode::Of<Gradient>().bits, dim)),
+ core::type::Flags{}),
+ dim_(dim) {}
+
+bool Gradient::Equals(const UniqueNode& other) const {
+ if (auto* g = other.As<Gradient>()) {
+ return g->Dim() == dim_;
+ }
+ return false;
+}
+
+std::string Gradient::FriendlyName() const {
+ StringStream out;
+ out << "msl.gradient";
+ switch (dim_) {
+ case Dim::k2d:
+ out << "2d";
+ break;
+ case Dim::k3d:
+ out << "3d";
+ break;
+ case Dim::kCube:
+ out << "cube";
+ break;
+ }
+ return out.str();
+}
+
+Gradient* Gradient::Clone(core::type::CloneContext& ctx) const {
+ return ctx.dst.mgr->Get<Gradient>(dim_);
+}
+
+} // namespace tint::msl::type
diff --git a/src/tint/lang/msl/type/gradient.h b/src/tint/lang/msl/type/gradient.h
new file mode 100644
index 0000000..3eec470
--- /dev/null
+++ b/src/tint/lang/msl/type/gradient.h
@@ -0,0 +1,71 @@
+// Copyright 2024 The Dawn & Tint Authors
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice, this
+// list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+// this list of conditions and the following disclaimer in the documentation
+// and/or other materials provided with the distribution.
+//
+// 3. Neither the name of the copyright holder nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#ifndef SRC_TINT_LANG_MSL_TYPE_GRADIENT_H_
+#define SRC_TINT_LANG_MSL_TYPE_GRADIENT_H_
+
+#include <cstdint>
+#include <string>
+
+#include "src/tint/lang/core/type/type.h"
+
+namespace tint::msl::type {
+
+/// Gradient represents the `metal::gradient{2d,3d,cube}` type.
+class Gradient final : public Castable<Gradient, core::type::Type> {
+ public:
+ enum class Dim : uint8_t {
+ k2d,
+ k3d,
+ kCube,
+ };
+
+ /// Constructor
+ /// @param dim the gradient dimensionality
+ explicit Gradient(enum Dim dim);
+
+ /// @param other the other node to compare against
+ /// @returns true if the this type is equal to @p other
+ bool Equals(const UniqueNode& other) const override;
+
+ /// @returns the friendly name for this type
+ std::string FriendlyName() const override;
+
+ /// @param ctx the clone context
+ /// @returns a clone of this type
+ Gradient* Clone(core::type::CloneContext& ctx) const override;
+
+ /// @returns the number of dimensions of the gradient
+ enum Dim Dim() const { return dim_; }
+
+ private:
+ const enum Dim dim_;
+};
+
+} // namespace tint::msl::type
+
+#endif // SRC_TINT_LANG_MSL_TYPE_GRADIENT_H_
diff --git a/src/tint/lang/msl/type/gradient_test.cc b/src/tint/lang/msl/type/gradient_test.cc
new file mode 100644
index 0000000..2e9ab25
--- /dev/null
+++ b/src/tint/lang/msl/type/gradient_test.cc
@@ -0,0 +1,54 @@
+// Copyright 2024 The Dawn & Tint Authors
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice, this
+// list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+// this list of conditions and the following disclaimer in the documentation
+// and/or other materials provided with the distribution.
+//
+// 3. Neither the name of the copyright holder nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#include "src/tint/lang/msl/type/gradient.h"
+
+#include <gtest/gtest.h>
+
+namespace tint::msl::type {
+namespace {
+
+TEST(GradientTest, Equals) {
+ const Gradient a(Gradient::Dim::k2d);
+ const Gradient b(Gradient::Dim::k2d);
+ const Gradient c(Gradient::Dim::k3d);
+
+ EXPECT_TRUE(a.Equals(b));
+ EXPECT_FALSE(a.Equals(c));
+}
+
+TEST(GradientTest, FriendlyName) {
+ const Gradient g2(Gradient::Dim::k2d);
+ const Gradient g3(Gradient::Dim::k3d);
+ const Gradient gcube(Gradient::Dim::kCube);
+ EXPECT_EQ(g2.FriendlyName(), "msl.gradient2d");
+ EXPECT_EQ(g3.FriendlyName(), "msl.gradient3d");
+ EXPECT_EQ(gcube.FriendlyName(), "msl.gradientcube");
+}
+
+} // namespace
+} // namespace tint::msl::type
diff --git a/src/tint/lang/msl/writer/printer/printer.cc b/src/tint/lang/msl/writer/printer/printer.cc
index b67f35b..e018659 100644
--- a/src/tint/lang/msl/writer/printer/printer.cc
+++ b/src/tint/lang/msl/writer/printer/printer.cc
@@ -92,6 +92,7 @@
#include "src/tint/lang/msl/ir/member_builtin_call.h"
#include "src/tint/lang/msl/ir/memory_order.h"
#include "src/tint/lang/msl/type/bias.h"
+#include "src/tint/lang/msl/type/gradient.h"
#include "src/tint/lang/msl/type/level.h"
#include "src/tint/lang/msl/writer/common/printer_support.h"
#include "src/tint/utils/containers/map.h"
@@ -1132,7 +1133,21 @@
}, //
// MSL builtin types.
- [&](const msl::type::Bias*) { out << "bias"; }, //
+ [&](const msl::type::Bias*) { out << "bias"; }, //
+ [&](const msl::type::Gradient* g) {
+ out << "gradient";
+ switch (g->Dim()) {
+ case type::Gradient::Dim::k2d:
+ out << "2d";
+ break;
+ case type::Gradient::Dim::k3d:
+ out << "3d";
+ break;
+ case type::Gradient::Dim::kCube:
+ out << "cube";
+ break;
+ }
+ }, //
[&](const msl::type::Level*) { out << "level"; }, //
TINT_ICE_ON_NO_MATCH);
diff --git a/src/tint/lang/msl/writer/raise/builtin_polyfill.cc b/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
index a0e9b61..18ba866 100644
--- a/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
+++ b/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
@@ -49,8 +49,10 @@
#include "src/tint/lang/msl/ir/member_builtin_call.h"
#include "src/tint/lang/msl/ir/memory_order.h"
#include "src/tint/lang/msl/type/bias.h"
+#include "src/tint/lang/msl/type/gradient.h"
#include "src/tint/lang/msl/type/level.h"
#include "src/tint/utils/containers/hashmap.h"
+#include "src/tint/utils/ice/ice.h"
namespace tint::msl::writer::raise {
namespace {
@@ -98,6 +100,7 @@
case core::BuiltinFn::kTextureSampleBias:
case core::BuiltinFn::kTextureSampleCompare:
case core::BuiltinFn::kTextureSampleCompareLevel:
+ case core::BuiltinFn::kTextureSampleGrad:
case core::BuiltinFn::kTextureSampleLevel:
case core::BuiltinFn::kTextureStore:
case core::BuiltinFn::kStorageBarrier:
@@ -178,6 +181,9 @@
case core::BuiltinFn::kTextureSampleCompareLevel:
TextureSampleCompareLevel(builtin);
break;
+ case core::BuiltinFn::kTextureSampleGrad:
+ TextureSampleGrad(builtin);
+ break;
case core::BuiltinFn::kTextureSampleLevel:
TextureSampleLevel(builtin);
break;
@@ -453,6 +459,59 @@
builtin->Destroy();
}
+ /// Replace a textureSampleGrad call with the equivalent MSL intrinsic.
+ /// @param builtin the builtin call instruction
+ void TextureSampleGrad(core::ir::CoreBuiltinCall* builtin) {
+ // The MSL intrinsic is a member function, so we split the first argument off as the object.
+ auto* tex = builtin->Args()[0];
+ auto* tex_type = tex->Type()->As<core::type::Texture>();
+ auto args = Vector<core::ir::Value*, 4>(builtin->Args().Offset(1));
+
+ b.InsertBefore(builtin, [&] {
+ // Find the ddx and ddy arguments.
+ uint32_t grad_idx = 2;
+ if (tex_type->dim() == core::type::TextureDimension::k2dArray ||
+ tex_type->dim() == core::type::TextureDimension::kCubeArray) {
+ grad_idx = 3;
+ }
+ auto* ddx = args[grad_idx];
+ auto* ddy = args[grad_idx + 1];
+
+ // Wrap the ddx and ddy arguments in a constructor for the MSL `gradient` builtin type.
+ enum type::Gradient::Dim dim;
+ switch (tex_type->dim()) {
+ case core::type::TextureDimension::k2d:
+ case core::type::TextureDimension::k2dArray:
+ dim = type::Gradient::Dim::k2d;
+ break;
+ case core::type::TextureDimension::k3d:
+ dim = type::Gradient::Dim::k3d;
+ break;
+ case core::type::TextureDimension::kCube:
+ case core::type::TextureDimension::kCubeArray:
+ dim = type::Gradient::Dim::kCube;
+ break;
+ case core::type::TextureDimension::k1d:
+ case core::type::TextureDimension::kNone:
+ TINT_UNREACHABLE();
+ }
+ args[grad_idx] = b.Construct(ty.Get<msl::type::Gradient>(dim), ddx, ddy)->Result(0);
+
+ // Resize the argument list as the gradient argument only takes up one argument.
+ // Move the offset argument back one place if present.
+ const bool has_offset = args.Back()->Type()->is_signed_integer_vector();
+ if (has_offset) {
+ args[args.Length() - 2] = args.Back();
+ }
+ args.Resize(args.Length() - 1);
+
+ // Call the `sample()` member function.
+ b.MemberCallWithResult<msl::ir::MemberBuiltinCall>(
+ builtin->DetachResult(), msl::BuiltinFn::kSample, tex, std::move(args));
+ });
+ builtin->Destroy();
+ }
+
/// Replace a textureSampleLevel call with the equivalent MSL intrinsic.
/// @param builtin the builtin call instruction
void TextureSampleLevel(core::ir::CoreBuiltinCall* builtin) {
diff --git a/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc b/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc
index e59a701..0f0ec60 100644
--- a/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc
+++ b/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc
@@ -1585,6 +1585,208 @@
EXPECT_EQ(expect, str());
}
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleGrad_2d) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
+ auto* s = b.FunctionParam("s", ty.sampler());
+ auto* coords = b.FunctionParam("coords", ty.vec2<f32>());
+ auto* ddx = b.FunctionParam("ddx", ty.vec2<f32>());
+ auto* ddy = b.FunctionParam("ddy", ty.vec2<f32>());
+ auto* func = b.Function("foo", ty.vec4<f32>());
+ func->SetParams({t, s, coords, ddx, ddy});
+ b.Append(func->Block(), [&] {
+ auto* result =
+ b.Call<vec4<f32>>(core::BuiltinFn::kTextureSampleGrad, t, s, coords, ddx, ddy);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_2d<f32>, %s:sampler, %coords:vec2<f32>, %ddx:vec2<f32>, %ddy:vec2<f32>):vec4<f32> {
+ $B1: {
+ %7:vec4<f32> = textureSampleGrad %t, %s, %coords, %ddx, %ddy
+ ret %7
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_2d<f32>, %s:sampler, %coords:vec2<f32>, %ddx:vec2<f32>, %ddy:vec2<f32>):vec4<f32> {
+ $B1: {
+ %7:msl.gradient2d = construct %ddx, %ddy
+ %8:vec4<f32> = %t.sample %s, %coords, %7
+ ret %8
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleGrad_2dArray) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2dArray, ty.f32()));
+ auto* s = b.FunctionParam("s", ty.sampler());
+ auto* coords = b.FunctionParam("coords", ty.vec2<f32>());
+ auto* index = b.FunctionParam("index", ty.i32());
+ auto* ddx = b.FunctionParam("ddx", ty.vec2<f32>());
+ auto* ddy = b.FunctionParam("ddy", ty.vec2<f32>());
+ auto* func = b.Function("foo", ty.vec4<f32>());
+ func->SetParams({t, s, coords, index, ddx, ddy});
+ b.Append(func->Block(), [&] {
+ auto* result =
+ b.Call<vec4<f32>>(core::BuiltinFn::kTextureSampleGrad, t, s, coords, index, ddx, ddy);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_2d_array<f32>, %s:sampler, %coords:vec2<f32>, %index:i32, %ddx:vec2<f32>, %ddy:vec2<f32>):vec4<f32> {
+ $B1: {
+ %8:vec4<f32> = textureSampleGrad %t, %s, %coords, %index, %ddx, %ddy
+ ret %8
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_2d_array<f32>, %s:sampler, %coords:vec2<f32>, %index:i32, %ddx:vec2<f32>, %ddy:vec2<f32>):vec4<f32> {
+ $B1: {
+ %8:msl.gradient2d = construct %ddx, %ddy
+ %9:vec4<f32> = %t.sample %s, %coords, %index, %8
+ ret %9
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleGrad_3d) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k3d, ty.f32()));
+ auto* s = b.FunctionParam("s", ty.sampler());
+ auto* coords = b.FunctionParam("coords", ty.vec3<f32>());
+ auto* ddx = b.FunctionParam("ddx", ty.vec3<f32>());
+ auto* ddy = b.FunctionParam("ddy", ty.vec3<f32>());
+ auto* func = b.Function("foo", ty.vec4<f32>());
+ func->SetParams({t, s, coords, ddx, ddy});
+ b.Append(func->Block(), [&] {
+ auto* result =
+ b.Call<vec4<f32>>(core::BuiltinFn::kTextureSampleGrad, t, s, coords, ddx, ddy);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_3d<f32>, %s:sampler, %coords:vec3<f32>, %ddx:vec3<f32>, %ddy:vec3<f32>):vec4<f32> {
+ $B1: {
+ %7:vec4<f32> = textureSampleGrad %t, %s, %coords, %ddx, %ddy
+ ret %7
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_3d<f32>, %s:sampler, %coords:vec3<f32>, %ddx:vec3<f32>, %ddy:vec3<f32>):vec4<f32> {
+ $B1: {
+ %7:msl.gradient3d = construct %ddx, %ddy
+ %8:vec4<f32> = %t.sample %s, %coords, %7
+ ret %8
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleGrad_Cube) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::kCube, ty.f32()));
+ auto* s = b.FunctionParam("s", ty.sampler());
+ auto* coords = b.FunctionParam("coords", ty.vec3<f32>());
+ auto* ddx = b.FunctionParam("ddx", ty.vec3<f32>());
+ auto* ddy = b.FunctionParam("ddy", ty.vec3<f32>());
+ auto* func = b.Function("foo", ty.vec4<f32>());
+ func->SetParams({t, s, coords, ddx, ddy});
+ b.Append(func->Block(), [&] {
+ auto* result =
+ b.Call<vec4<f32>>(core::BuiltinFn::kTextureSampleGrad, t, s, coords, ddx, ddy);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_cube<f32>, %s:sampler, %coords:vec3<f32>, %ddx:vec3<f32>, %ddy:vec3<f32>):vec4<f32> {
+ $B1: {
+ %7:vec4<f32> = textureSampleGrad %t, %s, %coords, %ddx, %ddy
+ ret %7
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_cube<f32>, %s:sampler, %coords:vec3<f32>, %ddx:vec3<f32>, %ddy:vec3<f32>):vec4<f32> {
+ $B1: {
+ %7:msl.gradientcube = construct %ddx, %ddy
+ %8:vec4<f32> = %t.sample %s, %coords, %7
+ ret %8
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleGrad_WithOffset) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
+ auto* s = b.FunctionParam("s", ty.sampler());
+ auto* coords = b.FunctionParam("coords", ty.vec2<f32>());
+ auto* ddx = b.FunctionParam("ddx", ty.vec2<f32>());
+ auto* ddy = b.FunctionParam("ddy", ty.vec2<f32>());
+ auto* offset = b.FunctionParam("offset", ty.vec2<i32>());
+ auto* func = b.Function("foo", ty.vec4<f32>());
+ func->SetParams({t, s, coords, ddx, ddy, offset});
+ b.Append(func->Block(), [&] {
+ auto* result =
+ b.Call<vec4<f32>>(core::BuiltinFn::kTextureSampleGrad, t, s, coords, ddx, ddy, offset);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_2d<f32>, %s:sampler, %coords:vec2<f32>, %ddx:vec2<f32>, %ddy:vec2<f32>, %offset:vec2<i32>):vec4<f32> {
+ $B1: {
+ %8:vec4<f32> = textureSampleGrad %t, %s, %coords, %ddx, %ddy, %offset
+ ret %8
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_2d<f32>, %s:sampler, %coords:vec2<f32>, %ddx:vec2<f32>, %ddy:vec2<f32>, %offset:vec2<i32>):vec4<f32> {
+ $B1: {
+ %8:msl.gradient2d = construct %ddx, %ddy
+ %9:vec4<f32> = %t.sample %s, %coords, %8, %offset
+ ret %9
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
TEST_F(MslWriter_BuiltinPolyfillTest, TextureSampleLevel) {
auto* t = b.FunctionParam(
"t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/21402b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/21402b.wgsl.expected.ir.msl
index 7e92af2..12585f2 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/21402b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/21402b.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_21402b(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float3(1.0f), gradient3d(float3(1.0f), float3(1.0f)));
+ return res;
}
-
-%textureSampleGrad_21402b = func():void {
- $B2: {
- %5:texture_3d<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec3<f32>(1.0f), vec3<f32>(1.0f), vec3<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_21402b(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_21402b
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_21402b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_21402b
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_21402b(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_21402b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
index fb90410..63a7c6f 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_2ecd8f(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), 1, gradient2d(float2(1.0f), float2(1.0f)));
+ return res;
}
-
-%textureSampleGrad_2ecd8f = func():void {
- $B2: {
- %5:texture_2d_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), 1i, vec2<f32>(1.0f), vec2<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_2ecd8f(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_2ecd8f
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_2ecd8f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_2ecd8f
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_2ecd8f(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_2ecd8f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/521263.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/521263.wgsl.expected.ir.msl
index 5dcd64d..a25e782 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/521263.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/521263.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_521263(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), gradient2d(float2(1.0f), float2(1.0f)));
+ return res;
}
-
-%textureSampleGrad_521263 = func():void {
- $B2: {
- %5:texture_2d<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), vec2<f32>(1.0f), vec2<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_521263(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_521263
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_521263(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_521263
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_521263(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_521263
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/5312f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/5312f4.wgsl.expected.ir.msl
index bc9965c..1c319ba 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/5312f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/5312f4.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_5312f4(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float3(1.0f), gradientcube(float3(1.0f), float3(1.0f)));
+ return res;
}
-
-%textureSampleGrad_5312f4 = func():void {
- $B2: {
- %5:texture_cube<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec3<f32>(1.0f), vec3<f32>(1.0f), vec3<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5312f4(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_5312f4
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5312f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_5312f4
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_5312f4(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_5312f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/5884dd.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/5884dd.wgsl.expected.ir.msl
index b0063b5..6e54d44 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/5884dd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/5884dd.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_5884dd(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float3(1.0f), gradient3d(float3(1.0f), float3(1.0f)), int3(1));
+ return res;
}
-
-%textureSampleGrad_5884dd = func():void {
- $B2: {
- %5:texture_3d<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec3<f32>(1.0f), vec3<f32>(1.0f), vec3<f32>(1.0f), vec3<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5884dd(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_5884dd
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5884dd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_5884dd
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_5884dd(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_5884dd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/7cd6de.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
index d323764..4eeabf5 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_7cd6de(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), 1u, gradient2d(float2(1.0f), float2(1.0f)), int2(1));
+ return res;
}
-
-%textureSampleGrad_7cd6de = func():void {
- $B2: {
- %5:texture_2d_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), 1u, vec2<f32>(1.0f), vec2<f32>(1.0f), vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_7cd6de(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_7cd6de
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_7cd6de(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_7cd6de
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_7cd6de(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_7cd6de
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/a09131.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/a09131.wgsl.expected.ir.msl
index 34702ee..a1ac285 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/a09131.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/a09131.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_a09131(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), 1u, gradient2d(float2(1.0f), float2(1.0f)));
+ return res;
}
-
-%textureSampleGrad_a09131 = func():void {
- $B2: {
- %5:texture_2d_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), 1u, vec2<f32>(1.0f), vec2<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_a09131(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_a09131
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_a09131(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_a09131
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_a09131(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_a09131
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/bbb58f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
index ce6b693..814f4ba 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_bbb58f(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float3(1.0f), 1u, gradientcube(float3(1.0f), float3(1.0f)));
+ return res;
}
-
-%textureSampleGrad_bbb58f = func():void {
- $B2: {
- %5:texture_cube_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec3<f32>(1.0f), 1u, vec3<f32>(1.0f), vec3<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_bbb58f(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_bbb58f
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_bbb58f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_bbb58f
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_bbb58f(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_bbb58f
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
index 78bef3c..6bdf1f1 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_d4e3c5(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), gradient2d(float2(1.0f), float2(1.0f)), int2(1));
+ return res;
}
-
-%textureSampleGrad_d4e3c5 = func():void {
- $B2: {
- %5:texture_2d<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), vec2<f32>(1.0f), vec2<f32>(1.0f), vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d4e3c5(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_d4e3c5
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d4e3c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_d4e3c5
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_d4e3c5(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_d4e3c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/d65515.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/d65515.wgsl.expected.ir.msl
index 88364c9..45f3b7a 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/d65515.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/d65515.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_d65515(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float2(1.0f), 1, gradient2d(float2(1.0f), float2(1.0f)), int2(1));
+ return res;
}
-
-%textureSampleGrad_d65515 = func():void {
- $B2: {
- %5:texture_2d_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec2<f32>(1.0f), 1i, vec2<f32>(1.0f), vec2<f32>(1.0f), vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d65515(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_d65515
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d65515(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_d65515
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_d65515(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_d65515
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/literal/textureSampleGrad/e383db.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureSampleGrad/e383db.wgsl.expected.ir.msl
index affbda2..7b4d7e6 100644
--- a/test/tint/builtins/gen/literal/textureSampleGrad/e383db.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureSampleGrad/e383db.wgsl.expected.ir.msl
@@ -1,45 +1,39 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_e383db(tint_module_vars_struct tint_module_vars) {
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, float3(1.0f), 1, gradientcube(float3(1.0f), float3(1.0f)));
+ return res;
}
-
-%textureSampleGrad_e383db = func():void {
- $B2: {
- %5:texture_cube_array<f32> = load %arg_0
- %6:sampler = load %arg_1
- %7:vec4<f32> = textureSampleGrad %5, %6, vec3<f32>(1.0f), 1i, vec3<f32>(1.0f), vec3<f32>(1.0f)
- %res:ptr<function, vec4<f32>, read_write> = var, %7
- %9:vec4<f32> = load %res
- store %prevent_dce, %9
- ret
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_e383db(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureSampleGrad_e383db
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_e383db(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureSampleGrad_e383db
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_e383db(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureSampleGrad_e383db
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v.pos, .VertexOutput_prevent_dce=v.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/21402b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/21402b.wgsl.expected.ir.msl
index 13ed79d..e3913ec 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/21402b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/21402b.wgsl.expected.ir.msl
@@ -1,51 +1,43 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_21402b(tint_module_vars_struct tint_module_vars) {
+ float3 arg_2 = float3(1.0f);
+ float3 arg_3 = float3(1.0f);
+ float3 arg_4 = float3(1.0f);
+ float3 const v = arg_2;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, gradient3d(arg_3, arg_4));
+ return res;
}
-
-%textureSampleGrad_21402b = func():void {
- $B2: {
- %arg_2:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_3:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_4:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %8:texture_3d<f32> = load %arg_0
- %9:sampler = load %arg_1
- %10:vec3<f32> = load %arg_2
- %11:vec3<f32> = load %arg_3
- %12:vec3<f32> = load %arg_4
- %13:vec4<f32> = textureSampleGrad %8, %9, %10, %11, %12
- %res:ptr<function, vec4<f32>, read_write> = var, %13
- %15:vec4<f32> = load %res
- store %prevent_dce, %15
- ret
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_21402b(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %17:void = call %textureSampleGrad_21402b
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_21402b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %19:void = call %textureSampleGrad_21402b
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_21402b(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %21:void = call %textureSampleGrad_21402b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_1 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_1.pos, .VertexOutput_prevent_dce=v_1.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
index 89150db..fe22e5a 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/2ecd8f.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_2ecd8f(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ int arg_3 = 1;
+ float2 arg_4 = float2(1.0f);
+ float2 arg_5 = float2(1.0f);
+ float2 const v = arg_2;
+ int const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradient2d(arg_4, arg_5));
+ return res;
}
-
-%textureSampleGrad_2ecd8f = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, i32, read_write> = var, 1i
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_5:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %9:texture_2d_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec2<f32> = load %arg_2
- %12:i32 = load %arg_3
- %13:vec2<f32> = load %arg_4
- %14:vec2<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_2ecd8f(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_2ecd8f
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_2ecd8f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_2ecd8f
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_2ecd8f(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_2ecd8f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/521263.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/521263.wgsl.expected.ir.msl
index bd1624b..4063a10 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/521263.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/521263.wgsl.expected.ir.msl
@@ -1,51 +1,43 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_521263(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ float2 arg_3 = float2(1.0f);
+ float2 arg_4 = float2(1.0f);
+ float2 const v = arg_2;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, gradient2d(arg_3, arg_4));
+ return res;
}
-
-%textureSampleGrad_521263 = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %8:texture_2d<f32> = load %arg_0
- %9:sampler = load %arg_1
- %10:vec2<f32> = load %arg_2
- %11:vec2<f32> = load %arg_3
- %12:vec2<f32> = load %arg_4
- %13:vec4<f32> = textureSampleGrad %8, %9, %10, %11, %12
- %res:ptr<function, vec4<f32>, read_write> = var, %13
- %15:vec4<f32> = load %res
- store %prevent_dce, %15
- ret
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_521263(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %17:void = call %textureSampleGrad_521263
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_521263(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %19:void = call %textureSampleGrad_521263
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_521263(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %21:void = call %textureSampleGrad_521263
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_1 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_1.pos, .VertexOutput_prevent_dce=v_1.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/5312f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/5312f4.wgsl.expected.ir.msl
index 2ade175..c9dfe9c 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/5312f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/5312f4.wgsl.expected.ir.msl
@@ -1,51 +1,43 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_5312f4(tint_module_vars_struct tint_module_vars) {
+ float3 arg_2 = float3(1.0f);
+ float3 arg_3 = float3(1.0f);
+ float3 arg_4 = float3(1.0f);
+ float3 const v = arg_2;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, gradientcube(arg_3, arg_4));
+ return res;
}
-
-%textureSampleGrad_5312f4 = func():void {
- $B2: {
- %arg_2:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_3:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_4:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %8:texture_cube<f32> = load %arg_0
- %9:sampler = load %arg_1
- %10:vec3<f32> = load %arg_2
- %11:vec3<f32> = load %arg_3
- %12:vec3<f32> = load %arg_4
- %13:vec4<f32> = textureSampleGrad %8, %9, %10, %11, %12
- %res:ptr<function, vec4<f32>, read_write> = var, %13
- %15:vec4<f32> = load %res
- store %prevent_dce, %15
- ret
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5312f4(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %17:void = call %textureSampleGrad_5312f4
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5312f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %19:void = call %textureSampleGrad_5312f4
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_5312f4(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %21:void = call %textureSampleGrad_5312f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_1 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_1.pos, .VertexOutput_prevent_dce=v_1.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/5884dd.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/5884dd.wgsl.expected.ir.msl
index 13c6384..ce87bd9 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/5884dd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/5884dd.wgsl.expected.ir.msl
@@ -1,51 +1,43 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_5884dd(tint_module_vars_struct tint_module_vars) {
+ float3 arg_2 = float3(1.0f);
+ float3 arg_3 = float3(1.0f);
+ float3 arg_4 = float3(1.0f);
+ float3 const v = arg_2;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, gradient3d(arg_3, arg_4), int3(1));
+ return res;
}
-
-%textureSampleGrad_5884dd = func():void {
- $B2: {
- %arg_2:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_3:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_4:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %8:texture_3d<f32> = load %arg_0
- %9:sampler = load %arg_1
- %10:vec3<f32> = load %arg_2
- %11:vec3<f32> = load %arg_3
- %12:vec3<f32> = load %arg_4
- %13:vec4<f32> = textureSampleGrad %8, %9, %10, %11, %12, vec3<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %13
- %15:vec4<f32> = load %res
- store %prevent_dce, %15
- ret
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5884dd(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %17:void = call %textureSampleGrad_5884dd
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_5884dd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %19:void = call %textureSampleGrad_5884dd
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_5884dd(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %21:void = call %textureSampleGrad_5884dd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_1 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_1.pos, .VertexOutput_prevent_dce=v_1.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/7cd6de.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
index f08a74a..5030c42 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/7cd6de.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_7cd6de(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ uint arg_3 = 1u;
+ float2 arg_4 = float2(1.0f);
+ float2 arg_5 = float2(1.0f);
+ float2 const v = arg_2;
+ uint const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradient2d(arg_4, arg_5), int2(1));
+ return res;
}
-
-%textureSampleGrad_7cd6de = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, u32, read_write> = var, 1u
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_5:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %9:texture_2d_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec2<f32> = load %arg_2
- %12:u32 = load %arg_3
- %13:vec2<f32> = load %arg_4
- %14:vec2<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14, vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_7cd6de(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_7cd6de
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_7cd6de(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_7cd6de
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_7cd6de(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_7cd6de
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/a09131.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/a09131.wgsl.expected.ir.msl
index 3109635..9dcd2d9 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/a09131.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/a09131.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_a09131(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ uint arg_3 = 1u;
+ float2 arg_4 = float2(1.0f);
+ float2 arg_5 = float2(1.0f);
+ float2 const v = arg_2;
+ uint const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradient2d(arg_4, arg_5));
+ return res;
}
-
-%textureSampleGrad_a09131 = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, u32, read_write> = var, 1u
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_5:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %9:texture_2d_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec2<f32> = load %arg_2
- %12:u32 = load %arg_3
- %13:vec2<f32> = load %arg_4
- %14:vec2<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_a09131(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_a09131
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_a09131(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_a09131
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_a09131(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_a09131
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/bbb58f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
index aa6adf7..9ed22e7 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/bbb58f.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_bbb58f(tint_module_vars_struct tint_module_vars) {
+ float3 arg_2 = float3(1.0f);
+ uint arg_3 = 1u;
+ float3 arg_4 = float3(1.0f);
+ float3 arg_5 = float3(1.0f);
+ float3 const v = arg_2;
+ uint const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradientcube(arg_4, arg_5));
+ return res;
}
-
-%textureSampleGrad_bbb58f = func():void {
- $B2: {
- %arg_2:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_3:ptr<function, u32, read_write> = var, 1u
- %arg_4:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_5:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %9:texture_cube_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec3<f32> = load %arg_2
- %12:u32 = load %arg_3
- %13:vec3<f32> = load %arg_4
- %14:vec3<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_bbb58f(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_bbb58f
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_bbb58f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_bbb58f
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_bbb58f(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_bbb58f
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
index 82880bc..26c0e5d 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/d4e3c5.wgsl.expected.ir.msl
@@ -1,51 +1,43 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_d4e3c5(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ float2 arg_3 = float2(1.0f);
+ float2 arg_4 = float2(1.0f);
+ float2 const v = arg_2;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, gradient2d(arg_3, arg_4), int2(1));
+ return res;
}
-
-%textureSampleGrad_d4e3c5 = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %8:texture_2d<f32> = load %arg_0
- %9:sampler = load %arg_1
- %10:vec2<f32> = load %arg_2
- %11:vec2<f32> = load %arg_3
- %12:vec2<f32> = load %arg_4
- %13:vec4<f32> = textureSampleGrad %8, %9, %10, %11, %12, vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %13
- %15:vec4<f32> = load %res
- store %prevent_dce, %15
- ret
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d4e3c5(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %17:void = call %textureSampleGrad_d4e3c5
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d4e3c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %19:void = call %textureSampleGrad_d4e3c5
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_d4e3c5(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %21:void = call %textureSampleGrad_d4e3c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_1 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_1.pos, .VertexOutput_prevent_dce=v_1.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/d65515.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/d65515.wgsl.expected.ir.msl
index ec8b2ec..c8fa1b3 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/d65515.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/d65515.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_d65515(tint_module_vars_struct tint_module_vars) {
+ float2 arg_2 = float2(1.0f);
+ int arg_3 = 1;
+ float2 arg_4 = float2(1.0f);
+ float2 arg_5 = float2(1.0f);
+ float2 const v = arg_2;
+ int const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradient2d(arg_4, arg_5), int2(1));
+ return res;
}
-
-%textureSampleGrad_d65515 = func():void {
- $B2: {
- %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_3:ptr<function, i32, read_write> = var, 1i
- %arg_4:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %arg_5:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
- %9:texture_2d_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec2<f32> = load %arg_2
- %12:i32 = load %arg_3
- %13:vec2<f32> = load %arg_4
- %14:vec2<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14, vec2<i32>(1i)
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d65515(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_d65515
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_d65515(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_d65515
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_d65515(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_d65515
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/builtins/gen/var/textureSampleGrad/e383db.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureSampleGrad/e383db.wgsl.expected.ir.msl
index 34dfdff..595d65e 100644
--- a/test/tint/builtins/gen/var/textureSampleGrad/e383db.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureSampleGrad/e383db.wgsl.expected.ir.msl
@@ -1,53 +1,45 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ sampler arg_1;
+ device float4* prevent_dce;
+};
+struct VertexOutput {
+ float4 pos;
+ float4 prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 VertexOutput_pos [[position]];
+ float4 VertexOutput_prevent_dce [[user(locn0)]] [[flat]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<f32>, read> = var @binding_point(1, 0)
- %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
- %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
+float4 textureSampleGrad_e383db(tint_module_vars_struct tint_module_vars) {
+ float3 arg_2 = float3(1.0f);
+ int arg_3 = 1;
+ float3 arg_4 = float3(1.0f);
+ float3 arg_5 = float3(1.0f);
+ float3 const v = arg_2;
+ int const v_1 = arg_3;
+ float4 res = tint_module_vars.arg_0.sample(tint_module_vars.arg_1, v, v_1, gradientcube(arg_4, arg_5));
+ return res;
}
-
-%textureSampleGrad_e383db = func():void {
- $B2: {
- %arg_2:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_3:ptr<function, i32, read_write> = var, 1i
- %arg_4:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %arg_5:ptr<function, vec3<f32>, read_write> = var, vec3<f32>(1.0f)
- %9:texture_cube_array<f32> = load %arg_0
- %10:sampler = load %arg_1
- %11:vec3<f32> = load %arg_2
- %12:i32 = load %arg_3
- %13:vec3<f32> = load %arg_4
- %14:vec3<f32> = load %arg_5
- %15:vec4<f32> = textureSampleGrad %9, %10, %11, %12, %13, %14
- %res:ptr<function, vec4<f32>, read_write> = var, %15
- %17:vec4<f32> = load %res
- store %prevent_dce, %17
- ret
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_e383db(tint_module_vars);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %19:void = call %textureSampleGrad_e383db
- ret vec4<f32>(0.0f)
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]], device float4* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1, .prevent_dce=prevent_dce};
+ (*tint_module_vars.prevent_dce) = textureSampleGrad_e383db(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %21:void = call %textureSampleGrad_e383db
- ret
- }
+VertexOutput vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ VertexOutput out = {};
+ out.pos = float4(0.0f);
+ out.prevent_dce = textureSampleGrad_e383db(tint_module_vars);
+ return out;
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %23:void = call %textureSampleGrad_e383db
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], sampler arg_1 [[sampler(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .arg_1=arg_1};
+ VertexOutput const v_2 = vertex_main_inner(tint_module_vars);
+ return vertex_main_outputs{.VertexOutput_pos=v_2.pos, .VertexOutput_prevent_dce=v_2.prevent_dce};
}
-
-unhandled variable address space
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_2.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_2.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_2.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_3.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_3.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_3.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_4.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_4.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_4.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_5.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_5.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleExplicitLod_UsingGrad_SpvParserHandleTest_SampledImageAccessTest_Variable_5.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************
diff --git a/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl
deleted file mode 100644
index 0241c1a..0000000
--- a/test/tint/unittest/reader/spirv/ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm.expected.ir.msl
+++ /dev/null
@@ -1,9 +0,0 @@
-SKIP: FAILED
-
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureSampleGrad
-********************************************************************
-* The tint shader compiler has encountered an unexpected error. *
-* *
-* Please help us fix this issue by submitting a bug report at *
-* crbug.com/tint with the source program that triggered the bug. *
-********************************************************************