[msl] Add polyfill for textureDimensions()
Adds MSL member function definitions for get_width(), get_height(),
and get_depth().
Bug: 42251016
Change-Id: I05287fde1e07bff324904d0cf3d9f84bc9d533a8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/192780
Reviewed-by: dan sinclair <dsinclair@chromium.org>
diff --git a/src/tint/lang/msl/builtin_fn.cc b/src/tint/lang/msl/builtin_fn.cc
index 46b324c..a8c4604 100644
--- a/src/tint/lang/msl/builtin_fn.cc
+++ b/src/tint/lang/msl/builtin_fn.cc
@@ -64,6 +64,12 @@
return "atomic_load_explicit";
case BuiltinFn::kAtomicStoreExplicit:
return "atomic_store_explicit";
+ case BuiltinFn::kGetWidth:
+ return "get_width";
+ case BuiltinFn::kGetHeight:
+ return "get_height";
+ case BuiltinFn::kGetDepth:
+ return "get_depth";
case BuiltinFn::kSample:
return "sample";
case BuiltinFn::kThreadgroupBarrier:
diff --git a/src/tint/lang/msl/builtin_fn.h b/src/tint/lang/msl/builtin_fn.h
index 17703bf..e2dc320 100644
--- a/src/tint/lang/msl/builtin_fn.h
+++ b/src/tint/lang/msl/builtin_fn.h
@@ -58,6 +58,9 @@
kAtomicFetchXorExplicit,
kAtomicLoadExplicit,
kAtomicStoreExplicit,
+ kGetWidth,
+ kGetHeight,
+ kGetDepth,
kSample,
kThreadgroupBarrier,
kNone,
diff --git a/src/tint/lang/msl/intrinsic/data.cc b/src/tint/lang/msl/intrinsic/data.cc
index c3afbb3..3303b49 100644
--- a/src/tint/lang/msl/intrinsic/data.cc
+++ b/src/tint/lang/msl/intrinsic/data.cc
@@ -432,6 +432,144 @@
};
+/// TypeMatcher for 'type texture_depth_multisampled_2d'
+constexpr TypeMatcher kTextureDepthMultisampled2DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ if (!MatchTextureDepthMultisampled2D(state, ty)) {
+ return nullptr;
+ }
+ return BuildTextureDepthMultisampled2D(state, ty);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {
+ out << style::Type("texture_depth_multisampled_2d");
+ }
+};
+
+
+/// TypeMatcher for 'type texture_multisampled_2d'
+constexpr TypeMatcher kTextureMultisampled2DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ const Type* T = nullptr;
+ if (!MatchTextureMultisampled2D(state, ty, T)) {
+ return nullptr;
+ }
+ T = state.Type(T);
+ if (T == nullptr) {
+ return nullptr;
+ }
+ return BuildTextureMultisampled2D(state, ty, T);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText T;
+ state->PrintType(T);
+ out << style::Type("texture_multisampled_2d", "<", T, ">");
+ }
+};
+
+
+/// TypeMatcher for 'type texture_storage_1d'
+constexpr TypeMatcher kTextureStorage1DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ Number F = Number::invalid;
+ Number A = Number::invalid;
+ if (!MatchTextureStorage1D(state, ty, F, A)) {
+ return nullptr;
+ }
+ F = state.Num(F);
+ if (!F.IsValid()) {
+ return nullptr;
+ }
+ A = state.Num(A);
+ if (!A.IsValid()) {
+ return nullptr;
+ }
+ return BuildTextureStorage1D(state, ty, F, A);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F;
+ state->PrintNum(F);StyledText A;
+ state->PrintNum(A);
+ out << style::Type("texture_storage_1d", "<", F, ", ", A, ">");
+ }
+};
+
+
+/// TypeMatcher for 'type texture_storage_2d'
+constexpr TypeMatcher kTextureStorage2DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ Number F = Number::invalid;
+ Number A = Number::invalid;
+ if (!MatchTextureStorage2D(state, ty, F, A)) {
+ return nullptr;
+ }
+ F = state.Num(F);
+ if (!F.IsValid()) {
+ return nullptr;
+ }
+ A = state.Num(A);
+ if (!A.IsValid()) {
+ return nullptr;
+ }
+ return BuildTextureStorage2D(state, ty, F, A);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F;
+ state->PrintNum(F);StyledText A;
+ state->PrintNum(A);
+ out << style::Type("texture_storage_2d", "<", F, ", ", A, ">");
+ }
+};
+
+
+/// TypeMatcher for 'type texture_storage_2d_array'
+constexpr TypeMatcher kTextureStorage2DArrayMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ Number F = Number::invalid;
+ Number A = Number::invalid;
+ if (!MatchTextureStorage2DArray(state, ty, F, A)) {
+ return nullptr;
+ }
+ F = state.Num(F);
+ if (!F.IsValid()) {
+ return nullptr;
+ }
+ A = state.Num(A);
+ if (!A.IsValid()) {
+ return nullptr;
+ }
+ return BuildTextureStorage2DArray(state, ty, F, A);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F;
+ state->PrintNum(F);StyledText A;
+ state->PrintNum(A);
+ out << style::Type("texture_storage_2d_array", "<", F, ", ", A, ">");
+ }
+};
+
+
+/// TypeMatcher for 'type texture_storage_3d'
+constexpr TypeMatcher kTextureStorage3DMatcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ Number F = Number::invalid;
+ Number A = Number::invalid;
+ if (!MatchTextureStorage3D(state, ty, F, A)) {
+ return nullptr;
+ }
+ F = state.Num(F);
+ if (!F.IsValid()) {
+ return nullptr;
+ }
+ A = state.Num(A);
+ if (!A.IsValid()) {
+ return nullptr;
+ }
+ return BuildTextureStorage3D(state, ty, F, A);
+ },
+/* print */ []([[maybe_unused]] MatchState* state, StyledText& out) {StyledText F;
+ state->PrintNum(F);StyledText A;
+ state->PrintNum(A);
+ out << style::Type("texture_storage_3d", "<", F, ", ", A, ">");
+ }
+};
+
+
/// TypeMatcher for 'match iu32'
constexpr TypeMatcher kIu32Matcher {
/* match */ [](MatchState& state, const Type* ty) -> const Type* {
@@ -449,6 +587,26 @@
kI32Matcher.print(nullptr, out); out << style::Plain(" or "); kU32Matcher.print(nullptr, out);}
};
+/// TypeMatcher for 'match fiu32'
+constexpr TypeMatcher kFiu32Matcher {
+/* match */ [](MatchState& state, const Type* ty) -> const Type* {
+ if (MatchF32(state, ty)) {
+ return BuildF32(state, ty);
+ }
+ if (MatchI32(state, ty)) {
+ return BuildI32(state, ty);
+ }
+ if (MatchU32(state, ty)) {
+ return BuildU32(state, ty);
+ }
+ return nullptr;
+ },
+/* print */ [](MatchState*, StyledText& out) {
+ // Note: We pass nullptr to the Matcher.print() functions, as matchers do not support
+ // template arguments, nor can they match sub-types. As such, they have no use for the MatchState.
+ kF32Matcher.print(nullptr, out); out << style::Plain(", "); kI32Matcher.print(nullptr, out); out << style::Plain(" or "); kU32Matcher.print(nullptr, out);}
+};
+
/// EnumMatcher for 'match read_write'
constexpr NumberMatcher kReadWriteMatcher {
/* match */ [](MatchState&, Number number) -> Number {
@@ -517,7 +675,14 @@
/* [19] */ kTextureDepth2DArrayMatcher,
/* [20] */ kTextureDepthCubeMatcher,
/* [21] */ kTextureDepthCubeArrayMatcher,
- /* [22] */ kIu32Matcher,
+ /* [22] */ kTextureDepthMultisampled2DMatcher,
+ /* [23] */ kTextureMultisampled2DMatcher,
+ /* [24] */ kTextureStorage1DMatcher,
+ /* [25] */ kTextureStorage2DMatcher,
+ /* [26] */ kTextureStorage2DArrayMatcher,
+ /* [27] */ kTextureStorage3DMatcher,
+ /* [28] */ kIu32Matcher,
+ /* [29] */ kFiu32Matcher,
};
/// The template numbers, and number matchers
@@ -539,35 +704,63 @@
/* [6] */ MatcherIndex(3),
/* [7] */ MatcherIndex(0),
/* [8] */ MatcherIndex(2),
- /* [9] */ MatcherIndex(8),
- /* [10] */ MatcherIndex(5),
- /* [11] */ MatcherIndex(12),
- /* [12] */ MatcherIndex(5),
- /* [13] */ MatcherIndex(13),
- /* [14] */ MatcherIndex(5),
- /* [15] */ MatcherIndex(6),
- /* [16] */ MatcherIndex(5),
- /* [17] */ MatcherIndex(6),
- /* [18] */ MatcherIndex(3),
- /* [19] */ MatcherIndex(14),
- /* [20] */ MatcherIndex(5),
- /* [21] */ MatcherIndex(15),
- /* [22] */ MatcherIndex(5),
- /* [23] */ MatcherIndex(7),
- /* [24] */ MatcherIndex(5),
- /* [25] */ MatcherIndex(7),
- /* [26] */ MatcherIndex(3),
- /* [27] */ MatcherIndex(16),
- /* [28] */ MatcherIndex(5),
- /* [29] */ MatcherIndex(17),
- /* [30] */ MatcherIndex(5),
- /* [31] */ MatcherIndex(22),
- /* [32] */ MatcherIndex(4),
- /* [33] */ MatcherIndex(11),
- /* [34] */ MatcherIndex(18),
- /* [35] */ MatcherIndex(19),
- /* [36] */ MatcherIndex(20),
- /* [37] */ MatcherIndex(21),
+ /* [9] */ MatcherIndex(24),
+ /* [10] */ MatcherIndex(0),
+ /* [11] */ MatcherIndex(1),
+ /* [12] */ MatcherIndex(25),
+ /* [13] */ MatcherIndex(0),
+ /* [14] */ MatcherIndex(1),
+ /* [15] */ MatcherIndex(26),
+ /* [16] */ MatcherIndex(0),
+ /* [17] */ MatcherIndex(1),
+ /* [18] */ MatcherIndex(27),
+ /* [19] */ MatcherIndex(0),
+ /* [20] */ MatcherIndex(1),
+ /* [21] */ MatcherIndex(12),
+ /* [22] */ MatcherIndex(0),
+ /* [23] */ MatcherIndex(13),
+ /* [24] */ MatcherIndex(0),
+ /* [25] */ MatcherIndex(14),
+ /* [26] */ MatcherIndex(0),
+ /* [27] */ MatcherIndex(15),
+ /* [28] */ MatcherIndex(0),
+ /* [29] */ MatcherIndex(16),
+ /* [30] */ MatcherIndex(0),
+ /* [31] */ MatcherIndex(17),
+ /* [32] */ MatcherIndex(0),
+ /* [33] */ MatcherIndex(23),
+ /* [34] */ MatcherIndex(0),
+ /* [35] */ MatcherIndex(8),
+ /* [36] */ MatcherIndex(5),
+ /* [37] */ MatcherIndex(12),
+ /* [38] */ MatcherIndex(5),
+ /* [39] */ MatcherIndex(13),
+ /* [40] */ MatcherIndex(5),
+ /* [41] */ MatcherIndex(6),
+ /* [42] */ MatcherIndex(5),
+ /* [43] */ MatcherIndex(6),
+ /* [44] */ MatcherIndex(3),
+ /* [45] */ MatcherIndex(14),
+ /* [46] */ MatcherIndex(5),
+ /* [47] */ MatcherIndex(15),
+ /* [48] */ MatcherIndex(5),
+ /* [49] */ MatcherIndex(7),
+ /* [50] */ MatcherIndex(5),
+ /* [51] */ MatcherIndex(7),
+ /* [52] */ MatcherIndex(3),
+ /* [53] */ MatcherIndex(16),
+ /* [54] */ MatcherIndex(5),
+ /* [55] */ MatcherIndex(17),
+ /* [56] */ MatcherIndex(5),
+ /* [57] */ MatcherIndex(28),
+ /* [58] */ MatcherIndex(4),
+ /* [59] */ MatcherIndex(29),
+ /* [60] */ MatcherIndex(18),
+ /* [61] */ MatcherIndex(19),
+ /* [62] */ MatcherIndex(20),
+ /* [63] */ MatcherIndex(21),
+ /* [64] */ MatcherIndex(22),
+ /* [65] */ MatcherIndex(11),
};
static_assert(MatcherIndicesIndex::CanIndex(kMatcherIndices),
@@ -592,27 +785,27 @@
{
/* [3] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(32),
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [4] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(32),
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [5] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(19),
+ /* matcher_indices */ MatcherIndicesIndex(45),
},
{
/* [6] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [7] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(15),
+ /* matcher_indices */ MatcherIndicesIndex(41),
},
{
/* [8] */
@@ -622,22 +815,22 @@
{
/* [9] */
/* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(17),
+ /* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [10] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(35),
+ /* matcher_indices */ MatcherIndicesIndex(61),
},
{
/* [11] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [12] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(15),
+ /* matcher_indices */ MatcherIndicesIndex(41),
},
{
/* [13] */
@@ -647,62 +840,62 @@
{
/* [14] */
/* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(17),
+ /* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [15] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(13),
+ /* matcher_indices */ MatcherIndicesIndex(39),
},
{
/* [16] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [17] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(15),
+ /* matcher_indices */ MatcherIndicesIndex(41),
},
{
/* [18] */
/* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(17),
+ /* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [19] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(21),
+ /* matcher_indices */ MatcherIndicesIndex(47),
},
{
/* [20] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [21] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(23),
+ /* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [22] */
/* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(25),
+ /* matcher_indices */ MatcherIndicesIndex(51),
},
{
/* [23] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(29),
+ /* matcher_indices */ MatcherIndicesIndex(55),
},
{
/* [24] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [25] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(23),
+ /* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [26] */
@@ -712,37 +905,37 @@
{
/* [27] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(34),
+ /* matcher_indices */ MatcherIndicesIndex(60),
},
{
/* [28] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [29] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(15),
+ /* matcher_indices */ MatcherIndicesIndex(41),
},
{
/* [30] */
/* usage */ core::ParameterUsage::kOffset,
- /* matcher_indices */ MatcherIndicesIndex(17),
+ /* matcher_indices */ MatcherIndicesIndex(43),
},
{
/* [31] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(37),
+ /* matcher_indices */ MatcherIndicesIndex(63),
},
{
/* [32] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [33] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(23),
+ /* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [34] */
@@ -762,52 +955,52 @@
{
/* [37] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(32),
+ /* matcher_indices */ MatcherIndicesIndex(58),
},
{
/* [38] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(11),
+ /* matcher_indices */ MatcherIndicesIndex(37),
},
{
/* [39] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [40] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(10),
+ /* matcher_indices */ MatcherIndicesIndex(36),
},
{
/* [41] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(27),
+ /* matcher_indices */ MatcherIndicesIndex(53),
},
{
/* [42] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [43] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(23),
+ /* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [44] */
/* usage */ core::ParameterUsage::kTexture,
- /* matcher_indices */ MatcherIndicesIndex(36),
+ /* matcher_indices */ MatcherIndicesIndex(62),
},
{
/* [45] */
/* usage */ core::ParameterUsage::kSampler,
- /* matcher_indices */ MatcherIndicesIndex(33),
+ /* matcher_indices */ MatcherIndicesIndex(65),
},
{
/* [46] */
/* usage */ core::ParameterUsage::kCoords,
- /* matcher_indices */ MatcherIndicesIndex(23),
+ /* matcher_indices */ MatcherIndicesIndex(49),
},
{
/* [47] */
@@ -817,7 +1010,147 @@
{
/* [48] */
/* usage */ core::ParameterUsage::kNone,
- /* matcher_indices */ MatcherIndicesIndex(32),
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [49] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(23),
+ },
+ {
+ /* [50] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [51] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(25),
+ },
+ {
+ /* [52] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [53] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(27),
+ },
+ {
+ /* [54] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [55] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(29),
+ },
+ {
+ /* [56] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [57] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(31),
+ },
+ {
+ /* [58] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [59] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(60),
+ },
+ {
+ /* [60] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [61] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(61),
+ },
+ {
+ /* [62] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [63] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(62),
+ },
+ {
+ /* [64] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [65] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(63),
+ },
+ {
+ /* [66] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [67] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(12),
+ },
+ {
+ /* [68] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [69] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(15),
+ },
+ {
+ /* [70] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [71] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(18),
+ },
+ {
+ /* [72] */
+ /* usage */ core::ParameterUsage::kNone,
+ /* matcher_indices */ MatcherIndicesIndex(58),
+ },
+ {
+ /* [73] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(21),
+ },
+ {
+ /* [74] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(33),
+ },
+ {
+ /* [75] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(64),
+ },
+ {
+ /* [76] */
+ /* usage */ core::ParameterUsage::kTexture,
+ /* matcher_indices */ MatcherIndicesIndex(9),
},
};
@@ -828,19 +1161,37 @@
{
/* [0] */
/* name */ "T",
- /* matcher_indices */ MatcherIndicesIndex(31),
+ /* matcher_indices */ MatcherIndicesIndex(57),
/* kind */ TemplateInfo::Kind::kType,
},
{
/* [1] */
/* name */ "S",
- /* matcher_indices */ MatcherIndicesIndex(32),
+ /* matcher_indices */ MatcherIndicesIndex(58),
/* kind */ TemplateInfo::Kind::kNumber,
},
{
/* [2] */
+ /* name */ "F",
+ /* matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* kind */ TemplateInfo::Kind::kNumber,
+ },
+ {
+ /* [3] */
/* name */ "A",
- /* matcher_indices */ MatcherIndicesIndex(31),
+ /* matcher_indices */ MatcherIndicesIndex(/* invalid */),
+ /* kind */ TemplateInfo::Kind::kNumber,
+ },
+ {
+ /* [4] */
+ /* name */ "T",
+ /* matcher_indices */ MatcherIndicesIndex(59),
+ /* kind */ TemplateInfo::Kind::kType,
+ },
+ {
+ /* [5] */
+ /* name */ "A",
+ /* matcher_indices */ MatcherIndicesIndex(57),
/* kind */ TemplateInfo::Kind::kType,
},
};
@@ -851,171 +1202,523 @@
constexpr OverloadInfo kOverloads[] = {
{
/* [0] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(73),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [1] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(49),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [2] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(51),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [3] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(53),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [4] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(55),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [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(4),
+ /* parameters */ ParameterIndex(57),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [6] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(74),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [7] */
+ /* 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(59),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [8] */
+ /* 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(61),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [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(63),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [10] */
+ /* 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(65),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [11] */
+ /* 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(75),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [12] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(76),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [13] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(67),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [14] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(69),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [15] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(71),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [16] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(38),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [1] */
+ /* [17] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(15),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [2] */
+ /* [18] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(15),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [3] */
+ /* [19] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(5),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [4] */
+ /* [20] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 5,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(5),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [5] */
+ /* [21] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(19),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [6] */
+ /* [22] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(19),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [7] */
+ /* [23] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(41),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [8] */
+ /* [24] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(23),
- /* return_matcher_indices */ MatcherIndicesIndex(9),
+ /* return_matcher_indices */ MatcherIndicesIndex(35),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [9] */
+ /* [25] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(27),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [10] */
+ /* [26] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(27),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [11] */
+ /* [27] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(10),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [12] */
+ /* [28] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 5,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(10),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [13] */
+ /* [29] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
/* num_templates */ 0,
/* templates */ TemplateIndex(/* invalid */),
/* parameters */ ParameterIndex(44),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [14] */
+ /* [30] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kMemberFunction),
/* num_parameters */ 4,
/* num_explicit_templates */ 0,
/* num_templates */ 1,
- /* templates */ TemplateIndex(2),
+ /* templates */ TemplateIndex(5),
/* parameters */ ParameterIndex(31),
- /* return_matcher_indices */ MatcherIndicesIndex(10),
+ /* return_matcher_indices */ MatcherIndicesIndex(36),
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [15] */
+ /* [31] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(49),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [32] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(51),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [33] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(53),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [34] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(55),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [35] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(57),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [36] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 1,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(74),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [37] */
+ /* 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(59),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [38] */
+ /* 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(61),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [39] */
+ /* 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(63),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [40] */
+ /* 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(65),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [41] */
+ /* 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(75),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [42] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(67),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [43] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(69),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [44] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(71),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [45] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 1,
+ /* templates */ TemplateIndex(4),
+ /* parameters */ ParameterIndex(53),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [46] */
+ /* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsVertexPipeline, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline, OverloadFlag::kMemberFunction),
+ /* num_parameters */ 2,
+ /* num_explicit_templates */ 0,
+ /* num_templates */ 2,
+ /* templates */ TemplateIndex(2),
+ /* parameters */ ParameterIndex(71),
+ /* return_matcher_indices */ MatcherIndicesIndex(58),
+ /* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
+ },
+ {
+ /* [47] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 5,
/* num_explicit_templates */ 0,
@@ -1026,7 +1729,7 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [16] */
+ /* [48] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
@@ -1037,7 +1740,7 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [17] */
+ /* [49] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 2,
/* num_explicit_templates */ 0,
@@ -1048,7 +1751,7 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [18] */
+ /* [50] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsFragmentPipeline, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 3,
/* num_explicit_templates */ 0,
@@ -1059,7 +1762,7 @@
/* const_eval_fn */ ConstEvalFunctionIndex(/* invalid */),
},
{
- /* [19] */
+ /* [51] */
/* flags */ OverloadFlags(OverloadFlag::kIsBuiltin, OverloadFlag::kSupportsComputePipeline),
/* num_parameters */ 1,
/* num_explicit_templates */ 0,
@@ -1079,70 +1782,117 @@
/* [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(15),
+ /* overloads */ OverloadIndex(47),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [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(16),
+ /* overloads */ OverloadIndex(48),
},
{
/* [9] */
/* fn atomic_load_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, u32) -> T */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(17),
+ /* overloads */ OverloadIndex(49),
},
{
/* [10] */
/* fn atomic_store_explicit[T : iu32, S : workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32) */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(18),
+ /* overloads */ OverloadIndex(50),
},
{
/* [11] */
+ /* fn get_width[T : fiu32](texture: texture_1d<T>) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_2d<T>, u32) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_2d_array<T>, u32) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_3d<T>, u32) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_cube<T>, u32) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_cube_array<T>, u32) -> u32 */
+ /* fn get_width[T : fiu32](texture: texture_multisampled_2d<T>) -> u32 */
+ /* fn get_width(texture: texture_depth_2d, u32) -> u32 */
+ /* fn get_width(texture: texture_depth_2d_array, u32) -> u32 */
+ /* fn get_width(texture: texture_depth_cube, u32) -> u32 */
+ /* fn get_width(texture: texture_depth_cube_array, u32) -> u32 */
+ /* fn get_width(texture: texture_depth_multisampled_2d) -> u32 */
+ /* fn get_width[F : texel_format, A : access](texture: texture_storage_1d<F, A>) -> u32 */
+ /* fn get_width[F : texel_format, A : access](texture: texture_storage_2d<F, A>, u32) -> u32 */
+ /* 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(0),
+ },
+ {
+ /* [12] */
+ /* fn get_height[T : fiu32](texture: texture_2d<T>, u32) -> u32 */
+ /* fn get_height[T : fiu32](texture: texture_2d_array<T>, u32) -> u32 */
+ /* fn get_height[T : fiu32](texture: texture_3d<T>, u32) -> u32 */
+ /* fn get_height[T : fiu32](texture: texture_cube<T>, u32) -> u32 */
+ /* fn get_height[T : fiu32](texture: texture_cube_array<T>, u32) -> u32 */
+ /* fn get_height[T : fiu32](texture: texture_multisampled_2d<T>) -> u32 */
+ /* fn get_height(texture: texture_depth_2d, u32) -> u32 */
+ /* fn get_height(texture: texture_depth_2d_array, u32) -> u32 */
+ /* fn get_height(texture: texture_depth_cube, u32) -> u32 */
+ /* fn get_height(texture: texture_depth_cube_array, u32) -> u32 */
+ /* fn get_height(texture: texture_depth_multisampled_2d) -> u32 */
+ /* fn get_height[F : texel_format, A : access](texture: texture_storage_2d<F, A>, u32) -> u32 */
+ /* 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(31),
+ },
+ {
+ /* [13] */
+ /* 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(45),
+ },
+ {
+ /* [14] */
/* fn sample(texture: texture_1d<f32>, sampler: sampler, coords: f32) -> vec4<f32> */
/* fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>) -> vec4<f32> */
/* fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, @const offset: vec2<i32>) -> vec4<f32> */
@@ -1159,13 +1909,13 @@
/* fn sample(texture: texture_depth_cube, sampler: sampler, coords: vec3<f32>) -> f32 */
/* fn sample[A : iu32](texture: texture_depth_cube_array, sampler: sampler, coords: vec3<f32>, array_index: A) -> f32 */
/* num overloads */ 15,
- /* overloads */ OverloadIndex(0),
+ /* overloads */ OverloadIndex(16),
},
{
- /* [12] */
+ /* [15] */
/* fn threadgroup_barrier(u32) */
/* num overloads */ 1,
- /* overloads */ OverloadIndex(19),
+ /* overloads */ OverloadIndex(51),
},
};
diff --git a/src/tint/lang/msl/msl.def b/src/tint/lang/msl/msl.def
index 235f697..47f6c3c 100644
--- a/src/tint/lang/msl/msl.def
+++ b/src/tint/lang/msl/msl.def
@@ -37,6 +37,7 @@
import "src/tint/lang/core/access.def"
import "src/tint/lang/core/address_space.def"
+import "src/tint/lang/core/texel_format.def"
////////////////////////////////////////////////////////////////////////////////
// Enum matchers //
@@ -73,12 +74,19 @@
type texture_depth_2d_array
type texture_depth_cube
type texture_depth_cube_array
+type texture_depth_multisampled_2d
+type texture_multisampled_2d<T>
+type texture_storage_1d<F: texel_format, A: access>
+type texture_storage_2d<F: texel_format, A: access>
+type texture_storage_2d_array<F: texel_format, A: access>
+type texture_storage_3d<F: texel_format, A: access>
////////////////////////////////////////////////////////////////////////////////
// Type matchers //
////////////////////////////////////////////////////////////////////////////////
match iu32: i32 | u32
+match fiu32: f32 | i32 | u32
////////////////////////////////////////////////////////////////////////////////
// Builtin Functions //
@@ -95,6 +103,41 @@
@stage("fragment", "compute") fn atomic_load_explicit[T: iu32, S: workgroup_or_storage](ptr<S, atomic<T>, read_write>, u32) -> T
@stage("fragment", "compute") fn atomic_store_explicit[T: iu32, S: workgroup_or_storage](ptr<S, atomic<T>, read_write>, T, u32)
+@member_function fn get_width[T: fiu32](texture: texture_1d<T>) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_2d<T>, u32) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_2d_array<T>, u32) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_3d<T>, u32) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_cube<T>, u32) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_cube_array<T>, u32) -> u32
+@member_function fn get_width[T: fiu32](texture: texture_multisampled_2d<T>) -> u32
+@member_function fn get_width(texture: texture_depth_2d, u32) -> u32
+@member_function fn get_width(texture: texture_depth_2d_array, u32) -> u32
+@member_function fn get_width(texture: texture_depth_cube, u32) -> u32
+@member_function fn get_width(texture: texture_depth_cube_array, u32) -> u32
+@member_function fn get_width(texture: texture_depth_multisampled_2d) -> u32
+@member_function fn get_width[F: texel_format, A: access](texture: texture_storage_1d<F, A>) -> u32
+@member_function fn get_width[F: texel_format, A: access](texture: texture_storage_2d<F, A>, u32) -> u32
+@member_function fn get_width[F: texel_format, A: access](texture: texture_storage_2d_array<F, A>, u32) -> u32
+@member_function fn get_width[F: texel_format, A: access](texture: texture_storage_3d<F, A>, u32) -> u32
+
+@member_function fn get_height[T: fiu32](texture: texture_2d<T>, u32) -> u32
+@member_function fn get_height[T: fiu32](texture: texture_2d_array<T>, u32) -> u32
+@member_function fn get_height[T: fiu32](texture: texture_3d<T>, u32) -> u32
+@member_function fn get_height[T: fiu32](texture: texture_cube<T>, u32) -> u32
+@member_function fn get_height[T: fiu32](texture: texture_cube_array<T>, u32) -> u32
+@member_function fn get_height[T: fiu32](texture: texture_multisampled_2d<T>) -> u32
+@member_function fn get_height(texture: texture_depth_2d, u32) -> u32
+@member_function fn get_height(texture: texture_depth_2d_array, u32) -> u32
+@member_function fn get_height(texture: texture_depth_cube, u32) -> u32
+@member_function fn get_height(texture: texture_depth_cube_array, u32) -> u32
+@member_function fn get_height(texture: texture_depth_multisampled_2d) -> u32
+@member_function fn get_height[F: texel_format, A: access](texture: texture_storage_2d<F, A>, u32) -> u32
+@member_function fn get_height[F: texel_format, A: access](texture: texture_storage_2d_array<F, A>, u32) -> u32
+@member_function fn get_height[F: texel_format, A: access](texture: texture_storage_3d<F, A>, u32) -> u32
+
+@member_function fn get_depth[T: fiu32](texture: texture_3d<T>, u32) -> u32
+@member_function fn get_depth[F: texel_format, A: access](texture: texture_storage_3d<F, A>, u32) -> u32
+
@member_function @stage("fragment") fn sample(texture: texture_1d<f32>, sampler: sampler, coords: f32) -> vec4<f32>
@member_function @stage("fragment") fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>) -> vec4<f32>
@member_function @stage("fragment") fn sample(texture: texture_2d<f32>, sampler: sampler, coords: vec2<f32>, @const offset: vec2<i32>) -> vec4<f32>
diff --git a/src/tint/lang/msl/writer/raise/builtin_polyfill.cc b/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
index b5bbaf1..8e8ef6d 100644
--- a/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
+++ b/src/tint/lang/msl/writer/raise/builtin_polyfill.cc
@@ -36,6 +36,10 @@
#include "src/tint/lang/core/ir/core_builtin_call.h"
#include "src/tint/lang/core/ir/function.h"
#include "src/tint/lang/core/ir/validator.h"
+#include "src/tint/lang/core/type/depth_multisampled_texture.h"
+#include "src/tint/lang/core/type/multisampled_texture.h"
+#include "src/tint/lang/core/type/texture.h"
+#include "src/tint/lang/core/type/texture_dimension.h"
#include "src/tint/lang/msl/barrier_type.h"
#include "src/tint/lang/msl/builtin_fn.h"
#include "src/tint/lang/msl/ir/builtin_call.h"
@@ -80,6 +84,7 @@
case core::BuiltinFn::kAtomicStore:
case core::BuiltinFn::kAtomicSub:
case core::BuiltinFn::kAtomicXor:
+ case core::BuiltinFn::kTextureDimensions:
case core::BuiltinFn::kTextureSample:
case core::BuiltinFn::kStorageBarrier:
case core::BuiltinFn::kWorkgroupBarrier:
@@ -131,6 +136,9 @@
break;
// Texture builtins.
+ case core::BuiltinFn::kTextureDimensions:
+ TextureDimensions(builtin);
+ break;
case core::BuiltinFn::kTextureSample:
TextureSample(builtin);
break;
@@ -205,6 +213,52 @@
builtin->Destroy();
}
+ /// Replace a textureDimensions call with the equivalent MSL intrinsics.
+ /// @param builtin the builtin call instruction
+ void TextureDimensions(core::ir::CoreBuiltinCall* builtin) {
+ auto* tex = builtin->Args()[0];
+ auto* type = tex->Type()->As<core::type::Texture>();
+ bool needs_lod_arg = type->dim() != core::type::TextureDimension::k1d &&
+ !type->Is<core::type::MultisampledTexture>() &&
+ !type->Is<core::type::DepthMultisampledTexture>();
+
+ b.InsertBefore(builtin, [&] {
+ // If we need a LOD argument, use the one provided or default to 0.
+ core::ir::Value* lod = nullptr;
+ if (needs_lod_arg) {
+ if (builtin->Args().Length() == 1) {
+ lod = b.Value(u32(0));
+ } else {
+ lod = builtin->Args()[1];
+ if (lod->Type()->is_signed_integer_scalar()) {
+ lod = b.Convert<u32>(lod)->Result(0);
+ }
+ }
+ }
+
+ // Call MSL member functions to get the dimensions of the image.
+ Vector<core::ir::InstructionResult*, 4> values;
+ auto get_dim = [&](msl::BuiltinFn fn) {
+ auto* call = b.MemberCall<msl::ir::MemberBuiltinCall>(ty.u32(), fn, tex);
+ if (lod) {
+ call->AppendArg(lod);
+ }
+ values.Push(call->Result(0));
+ };
+ get_dim(msl::BuiltinFn::kGetWidth);
+ if (type->dim() != core::type::TextureDimension::k1d) {
+ get_dim(msl::BuiltinFn::kGetHeight);
+ if (type->dim() == core::type::TextureDimension::k3d) {
+ get_dim(msl::BuiltinFn::kGetDepth);
+ }
+ }
+
+ // Reconstruct the original result type from the individual dimensions.
+ b.ConstructWithResult(builtin->DetachResult(), std::move(values));
+ });
+ builtin->Destroy();
+ }
+
/// Replace a textureSample call with the equivalent MSL intrinsic.
/// @param builtin the builtin call instruction
void TextureSample(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 904e1fa..e5b17de 100644
--- a/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc
+++ b/src/tint/lang/msl/writer/raise/builtin_polyfill_test.cc
@@ -36,6 +36,7 @@
#include "src/tint/lang/core/type/atomic.h"
#include "src/tint/lang/core/type/builtin_structs.h"
#include "src/tint/lang/core/type/sampled_texture.h"
+#include "src/tint/lang/core/type/texture_dimension.h"
using namespace tint::core::fluent_types; // NOLINT
using namespace tint::core::number_suffixes; // NOLINT
@@ -752,6 +753,151 @@
EXPECT_EQ(expect, str());
}
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureDimensions_1d) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k1d, ty.f32()));
+ auto* func = b.Function("foo", ty.u32());
+ func->SetParams({t});
+ b.Append(func->Block(), [&] {
+ auto* result = b.Call<u32>(core::BuiltinFn::kTextureDimensions, t);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_1d<f32>):u32 {
+ $B1: {
+ %3:u32 = textureDimensions %t
+ ret %3
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_1d<f32>):u32 {
+ $B1: {
+ %3:u32 = %t.get_width
+ %4:u32 = construct %3
+ ret %4
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureDimensions_2d_WithoutLod) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
+ auto* func = b.Function("foo", ty.vec2<u32>());
+ func->SetParams({t});
+ b.Append(func->Block(), [&] {
+ auto* result = b.Call<vec2<u32>>(core::BuiltinFn::kTextureDimensions, t);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_2d<f32>):vec2<u32> {
+ $B1: {
+ %3:vec2<u32> = textureDimensions %t
+ ret %3
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_2d<f32>):vec2<u32> {
+ $B1: {
+ %3:u32 = %t.get_width 0u
+ %4:u32 = %t.get_height 0u
+ %5:vec2<u32> = construct %3, %4
+ ret %5
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureDimensions_2d_WithI32Lod) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
+ auto* func = b.Function("foo", ty.vec2<u32>());
+ func->SetParams({t});
+ b.Append(func->Block(), [&] {
+ auto* result = b.Call<vec2<u32>>(core::BuiltinFn::kTextureDimensions, t, 3_i);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_2d<f32>):vec2<u32> {
+ $B1: {
+ %3:vec2<u32> = textureDimensions %t, 3i
+ ret %3
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_2d<f32>):vec2<u32> {
+ $B1: {
+ %3:u32 = convert 3i
+ %4:u32 = %t.get_width %3
+ %5:u32 = %t.get_height %3
+ %6:vec2<u32> = construct %4, %5
+ ret %6
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
+TEST_F(MslWriter_BuiltinPolyfillTest, TextureDimensions_3d) {
+ auto* t = b.FunctionParam(
+ "t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k3d, ty.f32()));
+ auto* func = b.Function("foo", ty.vec3<u32>());
+ func->SetParams({t});
+ b.Append(func->Block(), [&] {
+ auto* result = b.Call<vec3<u32>>(core::BuiltinFn::kTextureDimensions, t);
+ b.Return(func, result);
+ });
+
+ auto* src = R"(
+%foo = func(%t:texture_3d<f32>):vec3<u32> {
+ $B1: {
+ %3:vec3<u32> = textureDimensions %t
+ ret %3
+ }
+}
+)";
+ EXPECT_EQ(src, str());
+
+ auto* expect = R"(
+%foo = func(%t:texture_3d<f32>):vec3<u32> {
+ $B1: {
+ %3:u32 = %t.get_width 0u
+ %4:u32 = %t.get_height 0u
+ %5:u32 = %t.get_depth 0u
+ %6:vec3<u32> = construct %3, %4, %5
+ ret %6
+ }
+}
+)";
+
+ Run(BuiltinPolyfill);
+
+ EXPECT_EQ(expect, str());
+}
+
TEST_F(MslWriter_BuiltinPolyfillTest, TextureSample) {
auto* t = b.FunctionParam(
"t", ty.Get<core::type::SampledTexture>(core::type::TextureDimension::k2d, ty.f32()));
diff --git a/test/tint/builtins/gen/literal/textureDimensions/00229f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/00229f.wgsl.expected.ir.msl
index 849a6c6..aa16cc8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/00229f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/00229f.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_00229f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_00229f = func():void {
- $B2: {
- %4:texture_storage_3d<r8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_00229f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_00229f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00229f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_00229f
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00229f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_00229f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/00348c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/00348c.wgsl.expected.ir.msl
index 6e14327..5612acc4 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/00348c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/00348c.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_00348c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_00348c = func():void {
- $B2: {
- %4:texture_multisampled_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_00348c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_00348c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00348c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_00348c
- ret
- }
+kernel void compute_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00348c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_00348c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/022903.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/022903.wgsl.expected.ir.msl
index 7232e7e..b76a274 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/022903.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/022903.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_022903(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_022903 = func():void {
- $B2: {
- %4:texture_1d<i32> = load %arg_0
- %5:u32 = textureDimensions %4, 1u
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_022903(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_022903
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_022903(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_022903
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_022903(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_022903
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0329b0.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0329b0.wgsl.expected.ir.msl
index e8cd0aa..b6246e7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0329b0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0329b0.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_0329b0(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0329b0 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0329b0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0329b0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0329b0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0329b0
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0329b0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0329b0
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/033ea7.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/033ea7.wgsl.expected.ir.msl
index 94e7998..555d9ce 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/033ea7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/033ea7.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_033ea7(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_033ea7 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_033ea7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_033ea7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_033ea7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_033ea7
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_033ea7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_033ea7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/07f1ba.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/07f1ba.wgsl.expected.ir.msl
index 7bd43fe..45eb12e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/07f1ba.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/07f1ba.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_07f1ba(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_07f1ba = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_07f1ba(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_07f1ba
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_07f1ba(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_07f1ba
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_07f1ba(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_07f1ba
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/088918.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/088918.wgsl.expected.ir.msl
index 8b222cb..c9f3f3f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/088918.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/088918.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_088918(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_088918 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_088918(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_088918
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_088918(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_088918
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_088918(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_088918
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0890c6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0890c6.wgsl.expected.ir.msl
index 601df6f..c278052 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0890c6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0890c6.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0890c6(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(1u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0890c6 = func():void {
- $B2: {
- %4:texture_3d<f32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0890c6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0890c6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0890c6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0890c6
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0890c6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0890c6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/08e371.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/08e371.wgsl.expected.ir.msl
index b091661..cc4524b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/08e371.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/08e371.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_08e371(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_08e371 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_08e371(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_08e371
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_08e371(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_08e371
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_08e371(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_08e371
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/09140b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/09140b.wgsl.expected.ir.msl
index 7cecfa5..28af2b2 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/09140b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/09140b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_09140b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_09140b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_09140b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_09140b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_09140b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_09140b
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_09140b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_09140b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0baa0d.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0baa0d.wgsl.expected.ir.msl
index 3fe3ba8..b6dbf30 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0baa0d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0baa0d.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0baa0d(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0baa0d = func():void {
- $B2: {
- %4:texture_storage_2d<r32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0baa0d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0baa0d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0baa0d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0baa0d
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0baa0d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0baa0d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0c0b0c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0c0b0c.wgsl.expected.ir.msl
index 2b0db04..fc7dfc6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0c0b0c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0c0b0c.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_0c0b0c(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0c0b0c = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0c0b0c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0c0b0c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0c0b0c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0c0b0c
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0c0b0c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0c0b0c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0d4a7c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0d4a7c.wgsl.expected.ir.msl
index 587df6b..9e33e93 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0d4a7c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0d4a7c.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0d4a7c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0d4a7c = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0d4a7c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0d4a7c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0d4a7c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0d4a7c
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0d4a7c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0d4a7c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0ff9a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/0ff9a4.wgsl.expected.ir.msl
index ebdcefa..da4a72f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/0ff9a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/0ff9a4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0ff9a4(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0ff9a4 = func():void {
- $B2: {
- %4:texture_depth_cube_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0ff9a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0ff9a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0ff9a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0ff9a4
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0ff9a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0ff9a4
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/135176.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/135176.wgsl.expected.ir.msl
index 8bf1674..4cda88f5 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/135176.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/135176.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_135176(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_135176 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_135176(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_135176
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_135176(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_135176
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_135176(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_135176
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/13f8db.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/13f8db.wgsl.expected.ir.msl
index 022bcd6..7ff0065 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/13f8db.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/13f8db.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_13f8db(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_13f8db = func():void {
- $B2: {
- %4:texture_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_13f8db(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_13f8db
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_13f8db(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_13f8db
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_13f8db(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_13f8db
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1417dd.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/1417dd.wgsl.expected.ir.msl
index 8a98008..c366330 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/1417dd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/1417dd.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1417dd(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1417dd = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1417dd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1417dd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1417dd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1417dd
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1417dd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1417dd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/15aa17.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/15aa17.wgsl.expected.ir.msl
index 0d1b2e3..de354cc 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/15aa17.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/15aa17.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_15aa17(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_15aa17 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_15aa17(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_15aa17
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15aa17(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_15aa17
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15aa17(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_15aa17
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/15b577.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/15b577.wgsl.expected.ir.msl
index a2d9dc6..97ccb0e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/15b577.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/15b577.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_15b577(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_15b577 = func():void {
- $B2: {
- %4:texture_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_15b577(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_15b577
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15b577(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_15b577
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15b577(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_15b577
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/18f19f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/18f19f.wgsl.expected.ir.msl
index 5c1e999..b97c564 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/18f19f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/18f19f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_18f19f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_18f19f = func():void {
- $B2: {
- %4:texture_storage_2d<r8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_18f19f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_18f19f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_18f19f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_18f19f
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_18f19f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_18f19f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1a2be7.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/1a2be7.wgsl.expected.ir.msl
index f4d7661..44ba07b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/1a2be7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/1a2be7.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1a2be7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1a2be7 = func():void {
- $B2: {
- %4:texture_3d<i32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1a2be7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1a2be7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1a2be7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1a2be7
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1a2be7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1a2be7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1b720f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/1b720f.wgsl.expected.ir.msl
index 087679b..df1267d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/1b720f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/1b720f.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1b720f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1b720f = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1b720f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1b720f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1b720f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1b720f
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1b720f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1b720f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1bc428.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/1bc428.wgsl.expected.ir.msl
index b74d04f..4a8957e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/1bc428.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/1bc428.wgsl.expected.ir.msl
@@ -1,43 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1bc428(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1bc428 = func():void {
- $B2: {
- %4:texture_3d<f32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1bc428(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1bc428
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bc428(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1bc428
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bc428(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1bc428
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1bd78c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/1bd78c.wgsl.expected.ir.msl
index c3ac928..c54e0a6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/1bd78c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/1bd78c.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1bd78c(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1bd78c = func():void {
- $B2: {
- %4:texture_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1bd78c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1bd78c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bd78c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1bd78c
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bd78c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1bd78c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/212362.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/212362.wgsl.expected.ir.msl
index 9ae2b94..9a4ad98 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/212362.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/212362.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_212362(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_212362 = func():void {
- $B2: {
- %4:texture_storage_1d<r32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_212362(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_212362
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_212362(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_212362
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_212362(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_212362
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/224113.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/224113.wgsl.expected.ir.msl
index 01a873d..5e7443d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/224113.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/224113.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_224113(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_224113 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_224113(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_224113
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_224113(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_224113
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_224113(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_224113
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/22b5b6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/22b5b6.wgsl.expected.ir.msl
index 62e3a16..795a58a 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/22b5b6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/22b5b6.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_22b5b6(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_22b5b6 = func():void {
- $B2: {
- %4:texture_cube_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_22b5b6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_22b5b6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_22b5b6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_22b5b6
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_22b5b6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_22b5b6
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/24db07.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/24db07.wgsl.expected.ir.msl
index a6dfb5c..b734f66 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/24db07.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/24db07.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_24db07(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_24db07 = func():void {
- $B2: {
- %4:texture_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_24db07(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_24db07
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_24db07(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_24db07
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_24db07(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_24db07
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/25d284.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/25d284.wgsl.expected.ir.msl
index 0da591d..03a4f08 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/25d284.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/25d284.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_25d284(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_25d284 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_25d284(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_25d284
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_25d284(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_25d284
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_25d284(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_25d284
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2674d8.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2674d8.wgsl.expected.ir.msl
index d004de9..0013656 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2674d8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2674d8.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2674d8(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2674d8 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2674d8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2674d8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2674d8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2674d8
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2674d8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2674d8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/268ddb.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/268ddb.wgsl.expected.ir.msl
index f3ace0c..0c9bfeb 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/268ddb.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/268ddb.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_268ddb(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_268ddb = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_268ddb(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_268ddb
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_268ddb(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_268ddb
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_268ddb(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_268ddb
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/26d6bf.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/26d6bf.wgsl.expected.ir.msl
index c1f845d..b13431c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/26d6bf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/26d6bf.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_26d6bf(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_26d6bf = func():void {
- $B2: {
- %4:texture_1d<f32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_26d6bf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_26d6bf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_26d6bf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_26d6bf
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_26d6bf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_26d6bf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/284c27.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/284c27.wgsl.expected.ir.msl
index 7d0faea..9cfd27a 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/284c27.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/284c27.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_284c27(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_284c27 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_284c27(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_284c27
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_284c27(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_284c27
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_284c27(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_284c27
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2bafdf.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2bafdf.wgsl.expected.ir.msl
index 9760498..6bde090 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2bafdf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2bafdf.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_2bafdf(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2bafdf = func():void {
- $B2: {
- %4:texture_storage_1d<bgra8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2bafdf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2bafdf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2bafdf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2bafdf
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2bafdf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2bafdf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2dc5c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2dc5c5.wgsl.expected.ir.msl
index a95e06f..62a2677 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2dc5c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2dc5c5.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_2dc5c5(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2dc5c5 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2dc5c5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2dc5c5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2dc5c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2dc5c5
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2dc5c5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2dc5c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2e443d.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2e443d.wgsl.expected.ir.msl
index 14a2522..2dae4c6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2e443d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2e443d.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2e443d(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2e443d = func():void {
- $B2: {
- %4:texture_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2e443d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2e443d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2e443d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2e443d
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2e443d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2e443d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2fd2a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2fd2a4.wgsl.expected.ir.msl
index 4c813e5..e86ecd3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2fd2a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2fd2a4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2fd2a4(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2fd2a4 = func():void {
- $B2: {
- %4:texture_2d_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2fd2a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2fd2a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2fd2a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2fd2a4
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2fd2a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2fd2a4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2ff32a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/2ff32a.wgsl.expected.ir.msl
index 5d4bba5..5502af7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/2ff32a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/2ff32a.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2ff32a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2ff32a = func():void {
- $B2: {
- %4:texture_storage_3d<r32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2ff32a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2ff32a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2ff32a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2ff32a
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2ff32a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2ff32a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/305dd5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/305dd5.wgsl.expected.ir.msl
index 7ebfbd1..9cbf58d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/305dd5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/305dd5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_305dd5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_305dd5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_305dd5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_305dd5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_305dd5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_305dd5
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_305dd5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_305dd5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/31799c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/31799c.wgsl.expected.ir.msl
index fb3c196..658f478 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/31799c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/31799c.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_31799c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_31799c = func():void {
- $B2: {
- %4:texture_storage_3d<r32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_31799c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_31799c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_31799c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_31799c
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_31799c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_31799c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/346fee.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/346fee.wgsl.expected.ir.msl
index cc3c5ac..904b549 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/346fee.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/346fee.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_346fee(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_346fee = func():void {
- $B2: {
- %4:texture_cube_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_346fee(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_346fee
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_346fee(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_346fee
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_346fee(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_346fee
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/35a7e5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/35a7e5.wgsl.expected.ir.msl
index dac4208..825286f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/35a7e5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/35a7e5.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_35a7e5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_35a7e5 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_35a7e5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_35a7e5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35a7e5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_35a7e5
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35a7e5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_35a7e5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/35ee69.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/35ee69.wgsl.expected.ir.msl
index 2d3dfdc..c63c5f8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/35ee69.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/35ee69.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_35ee69(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_35ee69 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_35ee69(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_35ee69
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35ee69(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_35ee69
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35ee69(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_35ee69
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/378a65.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/378a65.wgsl.expected.ir.msl
index 3900345..cefaab6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/378a65.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/378a65.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_378a65(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_378a65 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_378a65(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_378a65
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_378a65(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_378a65
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_378a65(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_378a65
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/382b16.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/382b16.wgsl.expected.ir.msl
index 9af7332..e905b50 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/382b16.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/382b16.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_382b16(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_382b16 = func():void {
- $B2: {
- %4:texture_cube<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_382b16(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_382b16
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_382b16(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_382b16
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_382b16(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_382b16
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3963d0.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3963d0.wgsl.expected.ir.msl
index 8754cd9..682cd74 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3963d0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3963d0.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3963d0(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3963d0 = func():void {
- $B2: {
- %4:texture_cube_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3963d0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3963d0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3963d0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3963d0
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3963d0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3963d0
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/397dab.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/397dab.wgsl.expected.ir.msl
index 1e11e55..789e47e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/397dab.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/397dab.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_397dab(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_397dab = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_397dab(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_397dab
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_397dab(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_397dab
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_397dab(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_397dab
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3a5bb1.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3a5bb1.wgsl.expected.ir.msl
index a025279..7e826c5 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3a5bb1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3a5bb1.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3a5bb1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3a5bb1 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3a5bb1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3a5bb1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a5bb1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3a5bb1
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a5bb1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3a5bb1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3a7b69.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3a7b69.wgsl.expected.ir.msl
index 120e276..0fcdd6e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3a7b69.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3a7b69.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3a7b69(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3a7b69 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3a7b69(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3a7b69
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a7b69(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3a7b69
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a7b69(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3a7b69
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3af3e7.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3af3e7.wgsl.expected.ir.msl
index c68bbe6..be19d1b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3af3e7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3af3e7.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_3af3e7(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3af3e7 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3af3e7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3af3e7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3af3e7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3af3e7
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3af3e7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3af3e7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3b38f6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3b38f6.wgsl.expected.ir.msl
index 6dacb37..b2b2b91 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3b38f6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3b38f6.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3b38f6(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3b38f6 = func():void {
- $B2: {
- %4:texture_depth_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3b38f6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3b38f6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3b38f6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3b38f6
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3b38f6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3b38f6
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3baab5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3baab5.wgsl.expected.ir.msl
index 0b67c6a..2928021 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3baab5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3baab5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3baab5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3baab5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3baab5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3baab5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3baab5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3baab5
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3baab5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3baab5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3c66f0.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3c66f0.wgsl.expected.ir.msl
index 2061f4b..b67c01e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3c66f0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3c66f0.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3c66f0(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3c66f0 = func():void {
- $B2: {
- %4:texture_cube_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3c66f0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3c66f0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3c66f0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3c66f0
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3c66f0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3c66f0
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3f3474.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3f3474.wgsl.expected.ir.msl
index 4bf0dfb..03df67a 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3f3474.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3f3474.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3f3474(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3f3474 = func():void {
- $B2: {
- %4:texture_multisampled_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3f3474(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3f3474
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3f3474(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3f3474
- ret
- }
+kernel void compute_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3f3474(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3f3474
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3fc3dc.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3fc3dc.wgsl.expected.ir.msl
index ec59950..1268bb6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3fc3dc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3fc3dc.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3fc3dc(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3fc3dc = func():void {
- $B2: {
- %4:texture_2d_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3fc3dc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3fc3dc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3fc3dc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3fc3dc
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3fc3dc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3fc3dc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3ff0a5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/3ff0a5.wgsl.expected.ir.msl
index c51a938..986fa1c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/3ff0a5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/3ff0a5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3ff0a5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3ff0a5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3ff0a5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3ff0a5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3ff0a5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3ff0a5
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3ff0a5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3ff0a5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40c671.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/40c671.wgsl.expected.ir.msl
index 25a3c15..7bae585 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/40c671.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/40c671.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40c671(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40c671 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40c671(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40c671
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40c671(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40c671
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40c671(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40c671
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40da20.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/40da20.wgsl.expected.ir.msl
index 208291e..cbdd6e7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/40da20.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/40da20.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40da20(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40da20 = func():void {
- $B2: {
- %4:texture_storage_2d<r8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40da20(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40da20
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40da20(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40da20
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40da20(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40da20
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40ecf4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/40ecf4.wgsl.expected.ir.msl
index c705907..7672d7b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/40ecf4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/40ecf4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40ecf4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40ecf4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40ecf4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40ecf4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40ecf4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40ecf4
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40ecf4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40ecf4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/41545f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/41545f.wgsl.expected.ir.msl
index 2fa16a6..3bc56f0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/41545f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/41545f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_41545f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_41545f = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_41545f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_41545f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_41545f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_41545f
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_41545f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_41545f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/423519.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/423519.wgsl.expected.ir.msl
index 53deb29..e620ac6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/423519.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/423519.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_423519(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_423519 = func():void {
- $B2: {
- %4:texture_storage_3d<r32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_423519(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_423519
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_423519(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_423519
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_423519(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_423519
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/439651.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/439651.wgsl.expected.ir.msl
index 0217d47..050d7b9 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/439651.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/439651.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_439651(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_439651 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_439651(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_439651
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_439651(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_439651
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_439651(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_439651
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/445376.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/445376.wgsl.expected.ir.msl
index a204183..5c45362 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/445376.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/445376.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_445376(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_445376 = func():void {
- $B2: {
- %4:texture_2d_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_445376(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_445376
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_445376(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_445376
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_445376(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_445376
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/44b358.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/44b358.wgsl.expected.ir.msl
index 43f5263..213a904 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/44b358.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/44b358.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_44b358(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_44b358 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_44b358(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_44b358
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_44b358(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_44b358
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_44b358(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_44b358
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/452fc1.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/452fc1.wgsl.expected.ir.msl
index 5745a04..f42ee2f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/452fc1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/452fc1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_452fc1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_452fc1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_452fc1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_452fc1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_452fc1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_452fc1
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_452fc1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_452fc1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/46f0fc.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/46f0fc.wgsl.expected.ir.msl
index c3a792c..b6907bb 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/46f0fc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/46f0fc.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_46f0fc(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_46f0fc = func():void {
- $B2: {
- %4:texture_2d_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_46f0fc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_46f0fc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_46f0fc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_46f0fc
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_46f0fc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_46f0fc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4716a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/4716a4.wgsl.expected.ir.msl
index fd0adfb..d878f96 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/4716a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/4716a4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4716a4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4716a4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4716a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4716a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4716a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4716a4
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4716a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4716a4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/475c10.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/475c10.wgsl.expected.ir.msl
index ef7d399..1536dec 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/475c10.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/475c10.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_475c10(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_475c10 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_475c10(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_475c10
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_475c10(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_475c10
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_475c10(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_475c10
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/49a067.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/49a067.wgsl.expected.ir.msl
index b1f3fd8..16a2d7a 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/49a067.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/49a067.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_49a067(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_49a067 = func():void {
- $B2: {
- %4:texture_cube<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_49a067(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_49a067
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_49a067(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_49a067
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_49a067(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_49a067
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4acec7.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/4acec7.wgsl.expected.ir.msl
index 3c1c43b..e8582f2 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/4acec7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/4acec7.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4acec7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4acec7 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4acec7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4acec7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4acec7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4acec7
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4acec7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4acec7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4b26ef.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/4b26ef.wgsl.expected.ir.msl
index 50f413f..95c0033 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/4b26ef.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/4b26ef.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4b26ef(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4b26ef = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4b26ef(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4b26ef
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4b26ef(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4b26ef
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4b26ef(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4b26ef
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4be71b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/4be71b.wgsl.expected.ir.msl
index 11f227a..5bffd21 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/4be71b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/4be71b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4be71b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4be71b = func():void {
- $B2: {
- %4:texture_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4be71b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4be71b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4be71b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4be71b
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4be71b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4be71b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4d1f71.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/4d1f71.wgsl.expected.ir.msl
index 0dba440..7de8086 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/4d1f71.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/4d1f71.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4d1f71(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4d1f71 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4d1f71(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4d1f71
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4d1f71(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4d1f71
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4d1f71(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4d1f71
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/528c0e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/528c0e.wgsl.expected.ir.msl
index 5e77cb4..fa46126 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/528c0e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/528c0e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_528c0e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_528c0e = func():void {
- $B2: {
- %4:texture_2d_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_528c0e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_528c0e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_528c0e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_528c0e
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_528c0e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_528c0e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/52cf60.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/52cf60.wgsl.expected.ir.msl
index 531b168..74ff9ed 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/52cf60.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/52cf60.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_52cf60(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_52cf60 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_52cf60(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_52cf60
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_52cf60(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_52cf60
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_52cf60(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_52cf60
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/534ef8.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/534ef8.wgsl.expected.ir.msl
index f968e3c..e25eed4 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/534ef8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/534ef8.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_534ef8(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_534ef8 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_534ef8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_534ef8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_534ef8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_534ef8
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_534ef8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_534ef8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/542c62.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/542c62.wgsl.expected.ir.msl
index ecbc4a0..1fd7a2f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/542c62.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/542c62.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_542c62(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_542c62 = func():void {
- $B2: {
- %4:texture_storage_1d<r8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_542c62(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_542c62
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_542c62(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_542c62
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_542c62(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_542c62
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/58a82d.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/58a82d.wgsl.expected.ir.msl
index 2e1f885..bc33d41 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/58a82d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/58a82d.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_58a82d(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_58a82d = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_58a82d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_58a82d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_58a82d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_58a82d
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_58a82d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_58a82d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/591981.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/591981.wgsl.expected.ir.msl
index 97fd934..8af8435 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/591981.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/591981.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_591981(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_591981 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_591981(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_591981
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_591981(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_591981
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_591981(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_591981
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/599ab5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/599ab5.wgsl.expected.ir.msl
index 25db417..df671d0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/599ab5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/599ab5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_599ab5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_599ab5 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_599ab5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_599ab5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_599ab5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_599ab5
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_599ab5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_599ab5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/5b4b10.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/5b4b10.wgsl.expected.ir.msl
index 5d70969..96c1bc3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/5b4b10.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/5b4b10.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_5b4b10(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_5b4b10 = func():void {
- $B2: {
- %4:texture_storage_3d<bgra8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_5b4b10(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_5b4b10
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5b4b10(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_5b4b10
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5b4b10(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_5b4b10
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/5df042.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/5df042.wgsl.expected.ir.msl
index 18e817d..4f7edf7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/5df042.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/5df042.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_5df042(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_5df042 = func():void {
- $B2: {
- %4:texture_1d<i32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_5df042(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_5df042
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5df042(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_5df042
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5df042(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_5df042
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/607979.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/607979.wgsl.expected.ir.msl
index 9e9f649..db2fcee 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/607979.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/607979.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_607979(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_607979 = func():void {
- $B2: {
- %4:texture_storage_1d<r32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_607979(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_607979
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_607979(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_607979
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_607979(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_607979
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/609d34.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/609d34.wgsl.expected.ir.msl
index 2a9cae2..de8ac6b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/609d34.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/609d34.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_609d34(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_609d34 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8snorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_609d34(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_609d34
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_609d34(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_609d34
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_609d34(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_609d34
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/62cb5a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/62cb5a.wgsl.expected.ir.msl
index 3131f5a..1ec04cd 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/62cb5a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/62cb5a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_62cb5a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_62cb5a = func():void {
- $B2: {
- %4:texture_2d_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_62cb5a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_62cb5a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62cb5a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_62cb5a
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62cb5a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_62cb5a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/62e7ae.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/62e7ae.wgsl.expected.ir.msl
index 4216195..7eccb11 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/62e7ae.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/62e7ae.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_62e7ae(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_62e7ae = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_62e7ae(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_62e7ae
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62e7ae(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_62e7ae
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62e7ae(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_62e7ae
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/64dc74.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/64dc74.wgsl.expected.ir.msl
index 75fcd8a..9558d72 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/64dc74.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/64dc74.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_64dc74(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_64dc74 = func():void {
- $B2: {
- %4:texture_cube<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_64dc74(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_64dc74
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_64dc74(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_64dc74
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_64dc74(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_64dc74
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/674058.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/674058.wgsl.expected.ir.msl
index 01f1ff4..03bcfc6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/674058.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/674058.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_674058(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_674058 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_674058(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_674058
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_674058(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_674058
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_674058(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_674058
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6dae40.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/6dae40.wgsl.expected.ir.msl
index adb7d86..311c8f9 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/6dae40.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/6dae40.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6dae40(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6dae40 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6dae40(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6dae40
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dae40(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6dae40
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dae40(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6dae40
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6dbef4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/6dbef4.wgsl.expected.ir.msl
index 824418f..ff3521c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/6dbef4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/6dbef4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6dbef4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6dbef4 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6dbef4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6dbef4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dbef4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6dbef4
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dbef4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6dbef4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6e6c7a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/6e6c7a.wgsl.expected.ir.msl
index f3a3e71..d1a3a69 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/6e6c7a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/6e6c7a.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6e6c7a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(1u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6e6c7a = func():void {
- $B2: {
- %4:texture_3d<u32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6e6c7a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6e6c7a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e6c7a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6e6c7a
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e6c7a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6e6c7a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6e72c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/6e72c5.wgsl.expected.ir.msl
index 6b1da73..4e23d00 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/6e72c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/6e72c5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6e72c5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6e72c5 = func():void {
- $B2: {
- %4:texture_storage_2d<r32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6e72c5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6e72c5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e72c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6e72c5
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e72c5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6e72c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6f1b5d.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/6f1b5d.wgsl.expected.ir.msl
index d5ac0d7..c89a142 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/6f1b5d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/6f1b5d.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6f1b5d(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6f1b5d = func():void {
- $B2: {
- %4:texture_depth_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6f1b5d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6f1b5d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6f1b5d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6f1b5d
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6f1b5d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6f1b5d
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/709357.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/709357.wgsl.expected.ir.msl
index 61d2869..b27ed02 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/709357.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/709357.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_709357(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_709357 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_709357(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_709357
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_709357(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_709357
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_709357(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_709357
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7228de.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7228de.wgsl.expected.ir.msl
index 79806b5..7355e69 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7228de.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7228de.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7228de(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7228de = func():void {
- $B2: {
- %4:texture_storage_1d<r32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7228de(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7228de
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7228de(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7228de
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7228de(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7228de
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7327fa.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7327fa.wgsl.expected.ir.msl
index 16fb52c..df4c8ef 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7327fa.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7327fa.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7327fa(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7327fa = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8snorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7327fa(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7327fa
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7327fa(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7327fa
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7327fa(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7327fa
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/756031.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/756031.wgsl.expected.ir.msl
index a1e6f57..ce7b4fd 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/756031.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/756031.wgsl.expected.ir.msl
@@ -1,43 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_756031(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_756031 = func():void {
- $B2: {
- %4:texture_3d<i32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_756031(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_756031
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756031(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_756031
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756031(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_756031
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/756304.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/756304.wgsl.expected.ir.msl
index b11235e..051ee3b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/756304.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/756304.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_756304(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_756304 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_756304(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_756304
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756304(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_756304
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756304(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_756304
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/790e57.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/790e57.wgsl.expected.ir.msl
index ac9fe31..238b095 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/790e57.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/790e57.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_790e57(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_790e57 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_790e57(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_790e57
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_790e57(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_790e57
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_790e57(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_790e57
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/797c30.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/797c30.wgsl.expected.ir.msl
index 5363267..8eb94d2 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/797c30.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/797c30.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_797c30(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_797c30 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_797c30(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_797c30
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_797c30(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_797c30
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_797c30(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_797c30
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/79d168.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/79d168.wgsl.expected.ir.msl
index b9aeac2..796b5a3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/79d168.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/79d168.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_79d168(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_79d168 = func():void {
- $B2: {
- %4:texture_depth_cube = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_79d168(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_79d168
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_79d168(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_79d168
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_79d168(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_79d168
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7a3890.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7a3890.wgsl.expected.ir.msl
index 4bacd6e..953ded3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7a3890.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7a3890.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7a3890(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7a3890 = func():void {
- $B2: {
- %4:texture_3d<u32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7a3890(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7a3890
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a3890(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7a3890
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a3890(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7a3890
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7a9e30.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7a9e30.wgsl.expected.ir.msl
index 58f4d8e..5dd23dc 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7a9e30.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7a9e30.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7a9e30(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7a9e30 = func():void {
- $B2: {
- %4:texture_cube<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7a9e30(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7a9e30
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a9e30(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7a9e30
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a9e30(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7a9e30
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7c753b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7c753b.wgsl.expected.ir.msl
index d4ae4d4..c4b0111 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7c753b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7c753b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7c753b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7c753b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7c753b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7c753b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7c753b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7c753b
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7c753b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7c753b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7d8439.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7d8439.wgsl.expected.ir.msl
index 88fcff8..fa8047f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7d8439.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7d8439.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7d8439(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7d8439 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7d8439(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7d8439
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7d8439(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7d8439
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7d8439(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7d8439
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7edb05.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/7edb05.wgsl.expected.ir.msl
index eb022fb..46e72c5 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/7edb05.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/7edb05.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7edb05(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7edb05 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7edb05(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7edb05
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7edb05(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7edb05
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7edb05(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7edb05
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8057cb.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8057cb.wgsl.expected.ir.msl
index c1ab7fe..8ac6891 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8057cb.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8057cb.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8057cb(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8057cb = func():void {
- $B2: {
- %4:texture_storage_3d<bgra8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8057cb(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8057cb
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8057cb(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8057cb
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8057cb(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8057cb
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/841ebe.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/841ebe.wgsl.expected.ir.msl
index 17df82a..c493b1f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/841ebe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/841ebe.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_841ebe(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_841ebe = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_841ebe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_841ebe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_841ebe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_841ebe
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_841ebe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_841ebe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/84f363.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/84f363.wgsl.expected.ir.msl
index aa9df4d..ae7a2e6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/84f363.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/84f363.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_84f363(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_84f363 = func():void {
- $B2: {
- %4:texture_storage_1d<bgra8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_84f363(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_84f363
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_84f363(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_84f363
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_84f363(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_84f363
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/867ead.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/867ead.wgsl.expected.ir.msl
index 617e797..59df37e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/867ead.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/867ead.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_867ead(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_867ead = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8snorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_867ead(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_867ead
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_867ead(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_867ead
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_867ead(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_867ead
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/879b73.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/879b73.wgsl.expected.ir.msl
index 746ecfc..74bd7bb 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/879b73.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/879b73.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_879b73(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_879b73 = func():void {
- $B2: {
- %4:texture_cube_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_879b73(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_879b73
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_879b73(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_879b73
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_879b73(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_879b73
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/87b42d.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/87b42d.wgsl.expected.ir.msl
index 8f63c38..b072961 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/87b42d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/87b42d.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_87b42d(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_87b42d = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_87b42d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_87b42d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_87b42d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_87b42d
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_87b42d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_87b42d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/881dd4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/881dd4.wgsl.expected.ir.msl
index 74863db..ae8873d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/881dd4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/881dd4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_881dd4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_881dd4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_881dd4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_881dd4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_881dd4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_881dd4
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_881dd4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_881dd4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8a35f9.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8a35f9.wgsl.expected.ir.msl
index c071be2..b6b7ad8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8a35f9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8a35f9.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8a35f9(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8a35f9 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8a35f9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8a35f9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8a35f9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8a35f9
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8a35f9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8a35f9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8af728.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8af728.wgsl.expected.ir.msl
index 8934ef5..bc4c83c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8af728.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8af728.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8af728(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8af728 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8af728(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8af728
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8af728(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8af728
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8af728(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8af728
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8e15f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8e15f4.wgsl.expected.ir.msl
index 07f2d52..5631094 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8e15f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8e15f4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8e15f4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8e15f4 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8e15f4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8e15f4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e15f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8e15f4
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e15f4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8e15f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8e5de6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8e5de6.wgsl.expected.ir.msl
index 5b50de8..3e14e39 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8e5de6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8e5de6.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_8e5de6(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8e5de6 = func():void {
- $B2: {
- %4:texture_storage_1d<r32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8e5de6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8e5de6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e5de6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8e5de6
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e5de6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8e5de6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8efd47.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/8efd47.wgsl.expected.ir.msl
index 20db69d..7dfecec 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/8efd47.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/8efd47.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_8efd47(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8efd47 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8efd47(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8efd47
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8efd47(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8efd47
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8efd47(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8efd47
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/902179.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/902179.wgsl.expected.ir.msl
index b32850f..77ce935 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/902179.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/902179.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_902179(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_902179 = func():void {
- $B2: {
- %4:texture_storage_3d<r32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_902179(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_902179
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_902179(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_902179
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_902179(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_902179
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/904b0f.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/904b0f.wgsl.expected.ir.msl
index 936e48b..1cdf3c8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/904b0f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/904b0f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_904b0f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_904b0f = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_904b0f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_904b0f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_904b0f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_904b0f
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_904b0f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_904b0f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/90dd74.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/90dd74.wgsl.expected.ir.msl
index 98ef490..d93429b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/90dd74.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/90dd74.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_90dd74(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_90dd74 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_90dd74(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_90dd74
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_90dd74(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_90dd74
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_90dd74(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_90dd74
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/920006.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/920006.wgsl.expected.ir.msl
index 698b4b1..35359af 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/920006.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/920006.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_920006(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_920006 = func():void {
- $B2: {
- %4:texture_1d<u32> = load %arg_0
- %5:u32 = textureDimensions %4, 1i
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_920006(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_920006
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_920006(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_920006
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_920006(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_920006
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/92552e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/92552e.wgsl.expected.ir.msl
index 94b54b9..444a9a1 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/92552e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/92552e.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_92552e(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_92552e = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_92552e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_92552e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_92552e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_92552e
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_92552e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_92552e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9573f3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9573f3.wgsl.expected.ir.msl
index f3de2e7..d7c9da8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9573f3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9573f3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9573f3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9573f3 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9573f3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9573f3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9573f3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9573f3
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9573f3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9573f3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/965645.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/965645.wgsl.expected.ir.msl
index 69d9637..3717cf7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/965645.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/965645.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_965645(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_965645 = func():void {
- $B2: {
- %4:texture_1d<u32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_965645(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_965645
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_965645(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_965645
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_965645(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_965645
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/98b2d3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/98b2d3.wgsl.expected.ir.msl
index 0d26142..d4a1059 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/98b2d3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/98b2d3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_98b2d3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_98b2d3 = func():void {
- $B2: {
- %4:texture_cube_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_98b2d3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_98b2d3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_98b2d3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_98b2d3
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_98b2d3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_98b2d3
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/991ea9.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/991ea9.wgsl.expected.ir.msl
index 1d45751..bac2431 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/991ea9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/991ea9.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_991ea9(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_991ea9 = func():void {
- $B2: {
- %4:texture_depth_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_991ea9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_991ea9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_991ea9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_991ea9
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_991ea9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_991ea9
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9b10a0.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9b10a0.wgsl.expected.ir.msl
index d9e55ec..f80a0b3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9b10a0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9b10a0.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9b10a0(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9b10a0 = func():void {
- $B2: {
- %4:texture_storage_2d_array<bgra8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9b10a0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9b10a0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b10a0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9b10a0
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b10a0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9b10a0
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9b223b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9b223b.wgsl.expected.ir.msl
index cfd4e1e..872c311 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9b223b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9b223b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9b223b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9b223b = func():void {
- $B2: {
- %4:texture_cube<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9b223b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9b223b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b223b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9b223b
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b223b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9b223b
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9baf27.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9baf27.wgsl.expected.ir.msl
index 09fa746..0ba6b4c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9baf27.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9baf27.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9baf27(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9baf27 = func():void {
- $B2: {
- %4:texture_cube<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9baf27(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9baf27
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9baf27(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9baf27
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9baf27(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9baf27
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9c7a00.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9c7a00.wgsl.expected.ir.msl
index 0af581f..36456fc 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9c7a00.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9c7a00.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_9c7a00(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9c7a00 = func():void {
- $B2: {
- %4:texture_1d<u32> = load %arg_0
- %5:u32 = textureDimensions %4, 1u
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9c7a00(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9c7a00
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9c7a00(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9c7a00
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9c7a00(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9c7a00
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9cd4ca.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9cd4ca.wgsl.expected.ir.msl
index 07f2ef3..080af2f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9cd4ca.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9cd4ca.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9cd4ca(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9cd4ca = func():void {
- $B2: {
- %4:texture_cube<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9cd4ca(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9cd4ca
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd4ca(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9cd4ca
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd4ca(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9cd4ca
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9cd8ad.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9cd8ad.wgsl.expected.ir.msl
index 2cafaac..8d02903 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9cd8ad.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9cd8ad.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9cd8ad(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9cd8ad = func():void {
- $B2: {
- %4:texture_storage_3d<rg32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9cd8ad(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9cd8ad
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd8ad(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9cd8ad
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd8ad(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9cd8ad
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9d0bac.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9d0bac.wgsl.expected.ir.msl
index 112a8d0..2773b27 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9d0bac.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9d0bac.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9d0bac(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9d0bac = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9d0bac(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9d0bac
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d0bac(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9d0bac
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d0bac(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9d0bac
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9d68b8.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9d68b8.wgsl.expected.ir.msl
index 72d63e4..402c0f1 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9d68b8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9d68b8.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_9d68b8(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9d68b8 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8snorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9d68b8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9d68b8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d68b8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9d68b8
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d68b8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9d68b8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9dc27a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9dc27a.wgsl.expected.ir.msl
index 69c15a9..7a003a5 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9dc27a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9dc27a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9dc27a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9dc27a = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9dc27a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9dc27a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9dc27a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9dc27a
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9dc27a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9dc27a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9e0794.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9e0794.wgsl.expected.ir.msl
index be32208..cd0a008 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9e0794.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9e0794.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9e0794(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9e0794 = func():void {
- $B2: {
- %4:texture_2d_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9e0794(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9e0794
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9e0794(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9e0794
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9e0794(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9e0794
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9fcc3b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/9fcc3b.wgsl.expected.ir.msl
index e3ad776..bff6553 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/9fcc3b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/9fcc3b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9fcc3b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9fcc3b = func():void {
- $B2: {
- %4:texture_depth_cube_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9fcc3b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9fcc3b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9fcc3b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9fcc3b
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9fcc3b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9fcc3b
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a1598a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a1598a.wgsl.expected.ir.msl
index fd21c6f..8bd00ca 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a1598a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a1598a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a1598a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a1598a = func():void {
- $B2: {
- %4:texture_cube_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a1598a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a1598a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a1598a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a1598a
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a1598a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a1598a
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a20ba2.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a20ba2.wgsl.expected.ir.msl
index fd6e2c5..678f89f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a20ba2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a20ba2.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a20ba2(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a20ba2 = func():void {
- $B2: {
- %4:texture_storage_3d<r8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a20ba2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a20ba2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a20ba2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a20ba2
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a20ba2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a20ba2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a25d9b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a25d9b.wgsl.expected.ir.msl
index 0bb63bb..a85de12 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a25d9b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a25d9b.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a25d9b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a25d9b = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a25d9b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a25d9b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a25d9b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a25d9b
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a25d9b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a25d9b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a2ba5e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a2ba5e.wgsl.expected.ir.msl
index 6dfbdf2..b353b0d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a2ba5e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a2ba5e.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a2ba5e(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a2ba5e = func():void {
- $B2: {
- %4:texture_cube<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a2ba5e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a2ba5e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a2ba5e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a2ba5e
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a2ba5e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a2ba5e
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a3ea91.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a3ea91.wgsl.expected.ir.msl
index 0686639..1573c11 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a3ea91.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a3ea91.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a3ea91(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a3ea91 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a3ea91(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a3ea91
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a3ea91(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a3ea91
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a3ea91(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a3ea91
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a48049.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a48049.wgsl.expected.ir.msl
index 46fc59b..adc75d0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a48049.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a48049.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a48049(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a48049 = func():void {
- $B2: {
- %4:texture_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a48049(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a48049
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a48049(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a48049
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a48049(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a48049
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a4cd56.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a4cd56.wgsl.expected.ir.msl
index 4961dc8..0b12217 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a4cd56.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a4cd56.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a4cd56(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a4cd56 = func():void {
- $B2: {
- %4:texture_depth_2d_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a4cd56(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a4cd56
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a4cd56(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a4cd56
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a4cd56(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a4cd56
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a65776.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/a65776.wgsl.expected.ir.msl
index 2a10b20..a084bc7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/a65776.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/a65776.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a65776(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a65776 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a65776(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a65776
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a65776(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a65776
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a65776(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a65776
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/aa4353.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/aa4353.wgsl.expected.ir.msl
index 8f68441..38d6210 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/aa4353.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/aa4353.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_aa4353(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_aa4353 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_aa4353(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_aa4353
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aa4353(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_aa4353
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aa4353(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_aa4353
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/aac604.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/aac604.wgsl.expected.ir.msl
index b4f729e..4912240 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/aac604.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/aac604.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_aac604(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_aac604 = func():void {
- $B2: {
- %4:texture_1d<f32> = load %arg_0
- %5:u32 = textureDimensions %4, 1u
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_aac604(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_aac604
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aac604(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_aac604
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aac604(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_aac604
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ad7d3b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/ad7d3b.wgsl.expected.ir.msl
index 1a0e6ca..ab1a5fa 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/ad7d3b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/ad7d3b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ad7d3b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ad7d3b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ad7d3b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ad7d3b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ad7d3b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ad7d3b
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ad7d3b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ad7d3b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/af46ab.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/af46ab.wgsl.expected.ir.msl
index 949d892..2cdf5b7 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/af46ab.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/af46ab.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_af46ab(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_af46ab = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_af46ab(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_af46ab
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_af46ab(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_af46ab
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_af46ab(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_af46ab
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b3ab5e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b3ab5e.wgsl.expected.ir.msl
index 6f5fb3d..dad4548 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b3ab5e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b3ab5e.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b3ab5e(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b3ab5e = func():void {
- $B2: {
- %4:texture_cube_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b3ab5e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b3ab5e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b3ab5e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b3ab5e
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b3ab5e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b3ab5e
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b46d97.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b46d97.wgsl.expected.ir.msl
index b0652c5..4775cc8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b46d97.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b46d97.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b46d97(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b46d97 = func():void {
- $B2: {
- %4:texture_1d<i32> = load %arg_0
- %5:u32 = textureDimensions %4, 1i
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b46d97(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b46d97
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b46d97(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b46d97
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b46d97(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b46d97
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b51345.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b51345.wgsl.expected.ir.msl
index e4f0554..0df82aa 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b51345.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b51345.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b51345(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b51345 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b51345(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b51345
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b51345(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b51345
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b51345(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b51345
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b56112.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b56112.wgsl.expected.ir.msl
index 60af298..39bf1a0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b56112.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b56112.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b56112(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b56112 = func():void {
- $B2: {
- %4:texture_storage_2d<r32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b56112(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b56112
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b56112(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b56112
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b56112(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b56112
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b5ba03.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b5ba03.wgsl.expected.ir.msl
index 34d233d..df9d273 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b5ba03.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b5ba03.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b5ba03(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b5ba03 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b5ba03(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b5ba03
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b5ba03(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b5ba03
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b5ba03(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b5ba03
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b6bbf4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b6bbf4.wgsl.expected.ir.msl
index e676ab1..21625c4 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b6bbf4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b6bbf4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b6bbf4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b6bbf4 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b6bbf4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b6bbf4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b6bbf4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b6bbf4
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b6bbf4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b6bbf4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b9e7ef.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/b9e7ef.wgsl.expected.ir.msl
index 2489e6e..51b2cbb 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/b9e7ef.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/b9e7ef.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b9e7ef(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b9e7ef = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b9e7ef(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b9e7ef
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b9e7ef(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b9e7ef
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b9e7ef(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b9e7ef
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bb95d9.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/bb95d9.wgsl.expected.ir.msl
index 70d133a..55c9f1f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/bb95d9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/bb95d9.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bb95d9(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bb95d9 = func():void {
- $B2: {
- %4:texture_3d<f32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bb95d9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bb95d9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bb95d9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bb95d9
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bb95d9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bb95d9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bbe285.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/bbe285.wgsl.expected.ir.msl
index 499807d..bed3ee6 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/bbe285.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/bbe285.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bbe285(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bbe285 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bbe285(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bbe285
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bbe285(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bbe285
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bbe285(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bbe285
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bd94c8.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/bd94c8.wgsl.expected.ir.msl
index 969ccbc..37f4105 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/bd94c8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/bd94c8.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bd94c8(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bd94c8 = func():void {
- $B2: {
- %4:texture_depth_cube_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bd94c8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bd94c8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bd94c8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bd94c8
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bd94c8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bd94c8
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bec716.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/bec716.wgsl.expected.ir.msl
index 5a4f560..8ff1b9c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/bec716.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/bec716.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bec716(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bec716 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bec716(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bec716
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bec716(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bec716
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bec716(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bec716
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bf9170.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/bf9170.wgsl.expected.ir.msl
index c83ca85..47cb065 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/bf9170.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/bf9170.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bf9170(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bf9170 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8snorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bf9170(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bf9170
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bf9170(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bf9170
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bf9170(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bf9170
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c1189e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c1189e.wgsl.expected.ir.msl
index d2615a1..828b16c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c1189e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c1189e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c1189e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c1189e = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c1189e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c1189e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1189e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c1189e
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1189e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c1189e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c1dbf6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c1dbf6.wgsl.expected.ir.msl
index 514e05f..59ca77b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c1dbf6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c1dbf6.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c1dbf6(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c1dbf6 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c1dbf6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c1dbf6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1dbf6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c1dbf6
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1dbf6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c1dbf6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c2cdd3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c2cdd3.wgsl.expected.ir.msl
index 9688623..1ebf268 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c2cdd3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c2cdd3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_ms<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_multisampled_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c2cdd3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c2cdd3 = func():void {
- $B2: {
- %4:texture_depth_multisampled_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c2cdd3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c2cdd3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c2cdd3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c2cdd3
- ret
- }
+kernel void compute_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c2cdd3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c2cdd3
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c44fc1.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c44fc1.wgsl.expected.ir.msl
index 9ea7ecd..d6e7c10 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c44fc1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c44fc1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c44fc1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c44fc1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c44fc1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c44fc1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c44fc1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c44fc1
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c44fc1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c44fc1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c5a36e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c5a36e.wgsl.expected.ir.msl
index 36f79de..c4466ef 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c5a36e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c5a36e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c5a36e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c5a36e = func():void {
- $B2: {
- %4:texture_depth_cube = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c5a36e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c5a36e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c5a36e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c5a36e
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c5a36e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c5a36e
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c871f3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/c871f3.wgsl.expected.ir.msl
index cf61340..48d16ef 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/c871f3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/c871f3.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c871f3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(1u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c871f3 = func():void {
- $B2: {
- %4:texture_3d<i32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c871f3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c871f3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c871f3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c871f3
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c871f3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c871f3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cad3b7.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/cad3b7.wgsl.expected.ir.msl
index d8afa22..26c08c0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/cad3b7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/cad3b7.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cad3b7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cad3b7 = func():void {
- $B2: {
- %4:texture_storage_2d<r32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cad3b7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cad3b7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cad3b7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cad3b7
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cad3b7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cad3b7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cc947b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/cc947b.wgsl.expected.ir.msl
index 3f96199..802d668 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/cc947b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/cc947b.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cc947b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cc947b = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8snorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cc947b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cc947b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cc947b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cc947b
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cc947b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cc947b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cd3033.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/cd3033.wgsl.expected.ir.msl
index 8b882cd..194e932 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/cd3033.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/cd3033.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cd3033(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cd3033 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cd3033(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cd3033
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cd3033(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cd3033
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cd3033(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cd3033
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cedabd.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/cedabd.wgsl.expected.ir.msl
index 16fab76..4cd6281 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/cedabd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/cedabd.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_cedabd(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cedabd = func():void {
- $B2: {
- %4:texture_storage_1d<rg32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cedabd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cedabd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cedabd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cedabd
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cedabd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cedabd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cf2b50.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/cf2b50.wgsl.expected.ir.msl
index 850dbd5..d137465 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/cf2b50.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/cf2b50.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cf2b50(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cf2b50 = func():void {
- $B2: {
- %4:texture_cube_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cf2b50(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cf2b50
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cf2b50(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cf2b50
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cf2b50(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cf2b50
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d0778e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d0778e.wgsl.expected.ir.msl
index 2766e73..2455f03 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d0778e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d0778e.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d0778e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d0778e = func():void {
- $B2: {
- %4:texture_storage_3d<rg32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d0778e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d0778e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d0778e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d0778e
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d0778e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d0778e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d08a94.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d08a94.wgsl.expected.ir.msl
index 2409557..4cddf39 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d08a94.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d08a94.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_d08a94(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d08a94 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d08a94(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d08a94
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d08a94(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d08a94
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d08a94(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d08a94
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d1b882.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d1b882.wgsl.expected.ir.msl
index 01afc41..0bbeb72 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d1b882.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d1b882.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d1b882(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d1b882 = func():void {
- $B2: {
- %4:texture_storage_2d_array<bgra8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d1b882(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d1b882
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d1b882(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d1b882
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d1b882(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d1b882
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d3accd.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d3accd.wgsl.expected.ir.msl
index 0d009d7..6da583d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d3accd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d3accd.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d3accd(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d3accd = func():void {
- $B2: {
- %4:texture_depth_cube = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d3accd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d3accd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d3accd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d3accd
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d3accd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d3accd
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d44ac3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d44ac3.wgsl.expected.ir.msl
index 54c3236..d789c25 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d44ac3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d44ac3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d44ac3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d44ac3 = func():void {
- $B2: {
- %4:texture_storage_2d<bgra8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d44ac3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d44ac3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44ac3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d44ac3
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44ac3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d44ac3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d44dd1.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d44dd1.wgsl.expected.ir.msl
index 3bd1f75..d2e5cb99 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d44dd1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d44dd1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d44dd1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d44dd1 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d44dd1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d44dd1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44dd1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d44dd1
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44dd1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d44dd1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d63c28.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d63c28.wgsl.expected.ir.msl
index 5a40033..ca088ba 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d63c28.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d63c28.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d63c28(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d63c28 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d63c28(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d63c28
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d63c28(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d63c28
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d63c28(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d63c28
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d6f3cf.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d6f3cf.wgsl.expected.ir.msl
index 3db25b3..7445ee2 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d6f3cf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d6f3cf.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d6f3cf(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d6f3cf = func():void {
- $B2: {
- %4:texture_storage_2d<r32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d6f3cf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d6f3cf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d6f3cf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d6f3cf
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d6f3cf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d6f3cf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d8ba68.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d8ba68.wgsl.expected.ir.msl
index a06d2a2..e7e50d4 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d8ba68.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d8ba68.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d8ba68(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d8ba68 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d8ba68(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d8ba68
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8ba68(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d8ba68
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8ba68(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d8ba68
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d8f887.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/d8f887.wgsl.expected.ir.msl
index ae94e9a..e1fbf8e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/d8f887.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/d8f887.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d8f887(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d8f887 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d8f887(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d8f887
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8f887(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d8f887
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8f887(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d8f887
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/da30d2.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/da30d2.wgsl.expected.ir.msl
index 39888a1..2e7fde3 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/da30d2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/da30d2.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_da30d2(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_da30d2 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_da30d2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_da30d2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_da30d2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_da30d2
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_da30d2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_da30d2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/daf0fe.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/daf0fe.wgsl.expected.ir.msl
index 5df2122..03b9615 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/daf0fe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/daf0fe.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_daf0fe(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_daf0fe = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_daf0fe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_daf0fe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_daf0fe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_daf0fe
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_daf0fe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_daf0fe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/db7131.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/db7131.wgsl.expected.ir.msl
index 9ad882b..d259cc8 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/db7131.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/db7131.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_db7131(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_db7131 = func():void {
- $B2: {
- %4:texture_storage_3d<r32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_db7131(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_db7131
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_db7131(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_db7131
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_db7131(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_db7131
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dc83ce.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/dc83ce.wgsl.expected.ir.msl
index fe3c647..5520dd5 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/dc83ce.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/dc83ce.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dc83ce(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dc83ce = func():void {
- $B2: {
- %4:texture_storage_2d<r32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dc83ce(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_dc83ce
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dc83ce(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_dc83ce
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dc83ce(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_dc83ce
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/de03c6.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/de03c6.wgsl.expected.ir.msl
index 9078219..6c289ca 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/de03c6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/de03c6.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_de03c6(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_de03c6 = func():void {
- $B2: {
- %4:texture_storage_1d<r32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_de03c6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_de03c6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_de03c6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_de03c6
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_de03c6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_de03c6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dee461.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/dee461.wgsl.expected.ir.msl
index 5f041ee..994934e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/dee461.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/dee461.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dee461(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dee461 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8snorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dee461(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_dee461
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dee461(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_dee461
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dee461(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_dee461
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dfdc32.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/dfdc32.wgsl.expected.ir.msl
index f91ae8b..df3f29e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/dfdc32.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/dfdc32.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dfdc32(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dfdc32 = func():void {
- $B2: {
- %4:texture_depth_2d_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dfdc32(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_dfdc32
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dfdc32(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_dfdc32
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dfdc32(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_dfdc32
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e122fe.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e122fe.wgsl.expected.ir.msl
index 9fa70a2..e224865 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e122fe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e122fe.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_e122fe(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e122fe = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8snorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e122fe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e122fe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e122fe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e122fe
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e122fe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e122fe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e18a8b.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e18a8b.wgsl.expected.ir.msl
index 9d9dd71..abd1efc 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e18a8b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e18a8b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e18a8b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e18a8b = func():void {
- $B2: {
- %4:texture_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e18a8b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e18a8b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e18a8b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e18a8b
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e18a8b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e18a8b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e4bfd2.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e4bfd2.wgsl.expected.ir.msl
index fb143d2..e29966d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e4bfd2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e4bfd2.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e4bfd2(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e4bfd2 = func():void {
- $B2: {
- %4:texture_multisampled_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e4bfd2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e4bfd2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4bfd2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e4bfd2
- ret
- }
+kernel void compute_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4bfd2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e4bfd2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e4e310.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e4e310.wgsl.expected.ir.msl
index dbb3087..8f7af6d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e4e310.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e4e310.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e4e310(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e4e310 = func():void {
- $B2: {
- %4:texture_2d_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e4e310(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e4e310
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4e310(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e4e310
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4e310(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e4e310
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e5a203.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e5a203.wgsl.expected.ir.msl
index 72118bf..ab5a295 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e5a203.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e5a203.wgsl.expected.ir.msl
@@ -1,43 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e5a203(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e5a203 = func():void {
- $B2: {
- %4:texture_3d<u32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e5a203(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e5a203
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e5a203(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e5a203
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e5a203(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e5a203
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e738f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e738f4.wgsl.expected.ir.msl
index b50314a..ccce15c 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e738f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e738f4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e738f4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e738f4 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e738f4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e738f4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e738f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e738f4
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e738f4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e738f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e99308.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/e99308.wgsl.expected.ir.msl
index 4f612d8..6c00f7f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/e99308.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/e99308.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e99308(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e99308 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e99308(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e99308
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e99308(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e99308
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e99308(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e99308
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ea066c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/ea066c.wgsl.expected.ir.msl
index 9a38d3b..c95f9ff 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/ea066c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/ea066c.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ea066c(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ea066c = func():void {
- $B2: {
- %4:texture_storage_1d<r32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ea066c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ea066c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea066c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ea066c
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea066c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ea066c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ea25bc.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/ea25bc.wgsl.expected.ir.msl
index 3941694..83e0421 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/ea25bc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/ea25bc.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ea25bc(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ea25bc = func():void {
- $B2: {
- %4:texture_storage_1d<rg32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ea25bc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ea25bc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea25bc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ea25bc
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea25bc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ea25bc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/eafe19.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/eafe19.wgsl.expected.ir.msl
index 8971c91..07bf2de 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/eafe19.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/eafe19.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_eafe19(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(1u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(1u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_eafe19 = func():void {
- $B2: {
- %4:texture_depth_2d_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1u
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_eafe19(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_eafe19
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eafe19(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_eafe19
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eafe19(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_eafe19
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/eb03b1.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/eb03b1.wgsl.expected.ir.msl
index 2f2c4deb..bcda284 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/eb03b1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/eb03b1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_eb03b1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_eb03b1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_eb03b1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_eb03b1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eb03b1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_eb03b1
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eb03b1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_eb03b1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ef2e58.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/ef2e58.wgsl.expected.ir.msl
index 1568ae4..365b53b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/ef2e58.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/ef2e58.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_ef2e58(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ef2e58 = func():void {
- $B2: {
- %4:texture_storage_3d<r32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ef2e58(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ef2e58
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ef2e58(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ef2e58
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ef2e58(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ef2e58
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f17acd.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f17acd.wgsl.expected.ir.msl
index 3298759..859254b 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f17acd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f17acd.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_f17acd(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f17acd = func():void {
- $B2: {
- %4:texture_1d<f32> = load %arg_0
- %5:u32 = textureDimensions %4, 1i
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f17acd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f17acd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f17acd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f17acd
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f17acd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f17acd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f264a3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f264a3.wgsl.expected.ir.msl
index 645e567..8729687 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f264a3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f264a3.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_f264a3(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f264a3 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f264a3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f264a3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f264a3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f264a3
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f264a3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f264a3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f3a2ac.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f3a2ac.wgsl.expected.ir.msl
index 6724bae..93d528f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f3a2ac.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f3a2ac.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f3a2ac(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f3a2ac = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f3a2ac(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f3a2ac
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f3a2ac(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f3a2ac
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f3a2ac(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f3a2ac
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f4321c.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f4321c.wgsl.expected.ir.msl
index 6380af3..ac93118 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f4321c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f4321c.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f4321c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f4321c = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f4321c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f4321c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4321c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f4321c
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4321c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f4321c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f48886.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f48886.wgsl.expected.ir.msl
index 3080663..00346b0 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f48886.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f48886.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f48886(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f48886 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f48886(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f48886
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f48886(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f48886
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f48886(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f48886
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f4e469.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f4e469.wgsl.expected.ir.msl
index b5b0589..a6bd323 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f4e469.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f4e469.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f4e469(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f4e469 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f4e469(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f4e469
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4e469(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f4e469
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4e469(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f4e469
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f626b3.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f626b3.wgsl.expected.ir.msl
index f7a92d3..51c7351 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f626b3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f626b3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f626b3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f626b3 = func():void {
- $B2: {
- %4:texture_cube<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f626b3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f626b3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f626b3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f626b3
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f626b3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f626b3
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f7bac5.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f7bac5.wgsl.expected.ir.msl
index fa54e1e..e81031e 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f7bac5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f7bac5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f7bac5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f7bac5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f7bac5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f7bac5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f7bac5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f7bac5
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f7bac5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f7bac5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f8522e.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/f8522e.wgsl.expected.ir.msl
index c56b6b9..b784112 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/f8522e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/f8522e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f8522e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f8522e = func():void {
- $B2: {
- %4:texture_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f8522e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f8522e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f8522e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f8522e
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f8522e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f8522e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fbb15a.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/fbb15a.wgsl.expected.ir.msl
index 2e6dd38..c278f0d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/fbb15a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/fbb15a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_fbb15a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fbb15a = func():void {
- $B2: {
- %4:texture_storage_2d<bgra8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fbb15a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_fbb15a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fbb15a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_fbb15a
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fbb15a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_fbb15a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fdbae8.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/fdbae8.wgsl.expected.ir.msl
index 3b9fcc6..3b82f3f 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/fdbae8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/fdbae8.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_fdbae8(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fdbae8 = func():void {
- $B2: {
- %4:texture_storage_1d<r8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fdbae8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_fdbae8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdbae8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_fdbae8
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdbae8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_fdbae8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fdf6e9.wgsl.expected.ir.msl b/test/tint/builtins/gen/literal/textureDimensions/fdf6e9.wgsl.expected.ir.msl
index 93f9861..264ac0d 100644
--- a/test/tint/builtins/gen/literal/textureDimensions/fdf6e9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/literal/textureDimensions/fdf6e9.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_fdf6e9(tint_module_vars_struct tint_module_vars) {
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fdf6e9 = func():void {
- $B2: {
- %4:texture_2d_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4, 1i
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fdf6e9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_fdf6e9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdf6e9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_fdf6e9
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdf6e9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_fdf6e9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/00229f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/00229f.wgsl.expected.ir.msl
index 849a6c6..aa16cc8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/00229f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/00229f.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_00229f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_00229f = func():void {
- $B2: {
- %4:texture_storage_3d<r8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_00229f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_00229f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00229f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_00229f
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00229f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_00229f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/00348c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/00348c.wgsl.expected.ir.msl
index 6e14327..5612acc4 100644
--- a/test/tint/builtins/gen/var/textureDimensions/00348c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/00348c.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_00348c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_00348c = func():void {
- $B2: {
- %4:texture_multisampled_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_00348c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_00348c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00348c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_00348c
- ret
- }
+kernel void compute_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_00348c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_00348c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/022903.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/022903.wgsl.expected.ir.msl
index b11b4aa..1dfd518 100644
--- a/test/tint/builtins/gen/var/textureDimensions/022903.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/022903.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_022903(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_022903 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_1d<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_022903(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_022903
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_022903(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_022903
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_022903(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_022903
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0329b0.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0329b0.wgsl.expected.ir.msl
index e8cd0aa..b6246e7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0329b0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0329b0.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_0329b0(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0329b0 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0329b0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0329b0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0329b0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0329b0
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0329b0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0329b0
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/033ea7.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/033ea7.wgsl.expected.ir.msl
index 94e7998..555d9ce 100644
--- a/test/tint/builtins/gen/var/textureDimensions/033ea7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/033ea7.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_033ea7(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_033ea7 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_033ea7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_033ea7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_033ea7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_033ea7
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_033ea7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_033ea7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/07f1ba.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/07f1ba.wgsl.expected.ir.msl
index 7bd43fe..45eb12e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/07f1ba.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/07f1ba.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_07f1ba(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_07f1ba = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_07f1ba(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_07f1ba
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_07f1ba(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_07f1ba
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_07f1ba(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_07f1ba
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/088918.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/088918.wgsl.expected.ir.msl
index 8b222cb..c9f3f3f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/088918.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/088918.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_088918(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_088918 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_088918(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_088918
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_088918(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_088918
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_088918(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_088918
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0890c6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0890c6.wgsl.expected.ir.msl
index 6cec13e..c65c2ba 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0890c6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0890c6.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0890c6(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0890c6 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_3d<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0890c6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_0890c6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0890c6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_0890c6
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0890c6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_0890c6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/08e371.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/08e371.wgsl.expected.ir.msl
index b091661..cc4524b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/08e371.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/08e371.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_08e371(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_08e371 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_08e371(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_08e371
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_08e371(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_08e371
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_08e371(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_08e371
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/09140b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/09140b.wgsl.expected.ir.msl
index 7cecfa5..28af2b2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/09140b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/09140b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_09140b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_09140b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_09140b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_09140b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_09140b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_09140b
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_09140b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_09140b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0baa0d.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0baa0d.wgsl.expected.ir.msl
index 3fe3ba8..b6dbf30 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0baa0d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0baa0d.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0baa0d(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0baa0d = func():void {
- $B2: {
- %4:texture_storage_2d<r32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0baa0d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0baa0d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0baa0d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0baa0d
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0baa0d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0baa0d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0c0b0c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0c0b0c.wgsl.expected.ir.msl
index 2b0db04..fc7dfc6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0c0b0c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0c0b0c.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_0c0b0c(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0c0b0c = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0c0b0c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0c0b0c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0c0b0c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0c0b0c
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0c0b0c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0c0b0c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0d4a7c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0d4a7c.wgsl.expected.ir.msl
index 587df6b..9e33e93 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0d4a7c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0d4a7c.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0d4a7c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0d4a7c = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0d4a7c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_0d4a7c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0d4a7c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_0d4a7c
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0d4a7c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_0d4a7c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/0ff9a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/0ff9a4.wgsl.expected.ir.msl
index 9674681..cfca072 100644
--- a/test/tint/builtins/gen/var/textureDimensions/0ff9a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/0ff9a4.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_0ff9a4(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_0ff9a4 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_depth_cube_array = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_0ff9a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_0ff9a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0ff9a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_0ff9a4
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_0ff9a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_0ff9a4
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/135176.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/135176.wgsl.expected.ir.msl
index 8bf1674..4cda88f5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/135176.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/135176.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_135176(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_135176 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_135176(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_135176
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_135176(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_135176
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_135176(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_135176
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/13f8db.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/13f8db.wgsl.expected.ir.msl
index 8bf539b..4a77e06 100644
--- a/test/tint/builtins/gen/var/textureDimensions/13f8db.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/13f8db.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_13f8db(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_13f8db = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_13f8db(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_13f8db
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_13f8db(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_13f8db
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_13f8db(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_13f8db
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1417dd.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/1417dd.wgsl.expected.ir.msl
index 8a98008..c366330 100644
--- a/test/tint/builtins/gen/var/textureDimensions/1417dd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/1417dd.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1417dd(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1417dd = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1417dd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1417dd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1417dd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1417dd
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1417dd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1417dd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/15aa17.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/15aa17.wgsl.expected.ir.msl
index 0d1b2e3..de354cc 100644
--- a/test/tint/builtins/gen/var/textureDimensions/15aa17.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/15aa17.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_15aa17(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_15aa17 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_15aa17(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_15aa17
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15aa17(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_15aa17
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15aa17(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_15aa17
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/15b577.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/15b577.wgsl.expected.ir.msl
index df6e3c2..84f9ef4 100644
--- a/test/tint/builtins/gen/var/textureDimensions/15b577.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/15b577.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_15b577(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_15b577 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_15b577(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_15b577
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15b577(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_15b577
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_15b577(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_15b577
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/18f19f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/18f19f.wgsl.expected.ir.msl
index 5c1e999..b97c564 100644
--- a/test/tint/builtins/gen/var/textureDimensions/18f19f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/18f19f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_18f19f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_18f19f = func():void {
- $B2: {
- %4:texture_storage_2d<r8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_18f19f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_18f19f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_18f19f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_18f19f
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_18f19f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_18f19f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1a2be7.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/1a2be7.wgsl.expected.ir.msl
index f4d7661..44ba07b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/1a2be7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/1a2be7.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1a2be7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1a2be7 = func():void {
- $B2: {
- %4:texture_3d<i32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1a2be7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1a2be7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1a2be7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1a2be7
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1a2be7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1a2be7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1b720f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/1b720f.wgsl.expected.ir.msl
index 087679b..df1267d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/1b720f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/1b720f.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1b720f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1b720f = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1b720f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_1b720f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1b720f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_1b720f
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1b720f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_1b720f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1bc428.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/1bc428.wgsl.expected.ir.msl
index f731c83..ff82f64 100644
--- a/test/tint/builtins/gen/var/textureDimensions/1bc428.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/1bc428.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1bc428(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1bc428 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_3d<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1bc428(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_1bc428
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bc428(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_1bc428
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bc428(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_1bc428
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/1bd78c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/1bd78c.wgsl.expected.ir.msl
index ceb7d16..1af3067 100644
--- a/test/tint/builtins/gen/var/textureDimensions/1bd78c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/1bd78c.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_1bd78c(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_1bd78c = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_1bd78c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_1bd78c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bd78c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_1bd78c
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_1bd78c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_1bd78c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/212362.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/212362.wgsl.expected.ir.msl
index 9ae2b94..9a4ad98 100644
--- a/test/tint/builtins/gen/var/textureDimensions/212362.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/212362.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_212362(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_212362 = func():void {
- $B2: {
- %4:texture_storage_1d<r32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_212362(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_212362
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_212362(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_212362
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_212362(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_212362
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/224113.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/224113.wgsl.expected.ir.msl
index 01a873d..5e7443d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/224113.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/224113.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_224113(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_224113 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_224113(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_224113
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_224113(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_224113
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_224113(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_224113
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/22b5b6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/22b5b6.wgsl.expected.ir.msl
index 448dd16..403ffa6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/22b5b6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/22b5b6.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_22b5b6(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_22b5b6 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube_array<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_22b5b6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_22b5b6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_22b5b6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_22b5b6
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_22b5b6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_22b5b6
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/24db07.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/24db07.wgsl.expected.ir.msl
index a6dfb5c..b734f66 100644
--- a/test/tint/builtins/gen/var/textureDimensions/24db07.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/24db07.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_24db07(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_24db07 = func():void {
- $B2: {
- %4:texture_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_24db07(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_24db07
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_24db07(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_24db07
- ret
- }
+kernel void compute_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_24db07(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_24db07
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/25d284.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/25d284.wgsl.expected.ir.msl
index 0da591d..03a4f08 100644
--- a/test/tint/builtins/gen/var/textureDimensions/25d284.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/25d284.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_25d284(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_25d284 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_25d284(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_25d284
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_25d284(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_25d284
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_25d284(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_25d284
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2674d8.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2674d8.wgsl.expected.ir.msl
index d004de9..0013656 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2674d8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2674d8.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2674d8(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2674d8 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2674d8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2674d8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2674d8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2674d8
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2674d8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2674d8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/268ddb.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/268ddb.wgsl.expected.ir.msl
index f3ace0c..0c9bfeb 100644
--- a/test/tint/builtins/gen/var/textureDimensions/268ddb.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/268ddb.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_268ddb(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_268ddb = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_268ddb(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_268ddb
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_268ddb(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_268ddb
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_268ddb(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_268ddb
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/26d6bf.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/26d6bf.wgsl.expected.ir.msl
index c1f845d..b13431c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/26d6bf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/26d6bf.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_26d6bf(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_26d6bf = func():void {
- $B2: {
- %4:texture_1d<f32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_26d6bf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_26d6bf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_26d6bf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_26d6bf
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_26d6bf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_26d6bf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/284c27.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/284c27.wgsl.expected.ir.msl
index 7d0faea..9cfd27a 100644
--- a/test/tint/builtins/gen/var/textureDimensions/284c27.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/284c27.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_284c27(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_284c27 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_284c27(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_284c27
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_284c27(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_284c27
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_284c27(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_284c27
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2bafdf.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2bafdf.wgsl.expected.ir.msl
index 9760498..6bde090 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2bafdf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2bafdf.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_2bafdf(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2bafdf = func():void {
- $B2: {
- %4:texture_storage_1d<bgra8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2bafdf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2bafdf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2bafdf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2bafdf
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2bafdf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2bafdf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2dc5c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2dc5c5.wgsl.expected.ir.msl
index a95e06f..62a2677 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2dc5c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2dc5c5.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_2dc5c5(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2dc5c5 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2dc5c5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2dc5c5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2dc5c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2dc5c5
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2dc5c5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2dc5c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2e443d.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2e443d.wgsl.expected.ir.msl
index e43cfec..5b04bd5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2e443d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2e443d.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2e443d(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2e443d = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2e443d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_2e443d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2e443d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_2e443d
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2e443d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_2e443d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2fd2a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2fd2a4.wgsl.expected.ir.msl
index d3407e6..7a1efb9 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2fd2a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2fd2a4.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2fd2a4(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2fd2a4 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d_array<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2fd2a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_2fd2a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2fd2a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_2fd2a4
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2fd2a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_2fd2a4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/2ff32a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/2ff32a.wgsl.expected.ir.msl
index 5d4bba5..5502af7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/2ff32a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/2ff32a.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_2ff32a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_2ff32a = func():void {
- $B2: {
- %4:texture_storage_3d<r32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_2ff32a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_2ff32a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2ff32a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_2ff32a
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_2ff32a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_2ff32a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/305dd5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/305dd5.wgsl.expected.ir.msl
index 7ebfbd1..9cbf58d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/305dd5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/305dd5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_305dd5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_305dd5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_305dd5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_305dd5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_305dd5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_305dd5
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_305dd5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_305dd5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/31799c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/31799c.wgsl.expected.ir.msl
index fb3c196..658f478 100644
--- a/test/tint/builtins/gen/var/textureDimensions/31799c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/31799c.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_31799c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_31799c = func():void {
- $B2: {
- %4:texture_storage_3d<r32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_31799c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_31799c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_31799c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_31799c
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_31799c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_31799c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/346fee.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/346fee.wgsl.expected.ir.msl
index 35f9e32..4d5b812 100644
--- a/test/tint/builtins/gen/var/textureDimensions/346fee.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/346fee.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_346fee(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_346fee = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube_array<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_346fee(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_346fee
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_346fee(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_346fee
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_346fee(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_346fee
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/35a7e5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/35a7e5.wgsl.expected.ir.msl
index dac4208..825286f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/35a7e5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/35a7e5.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_35a7e5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_35a7e5 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_35a7e5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_35a7e5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35a7e5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_35a7e5
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35a7e5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_35a7e5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/35ee69.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/35ee69.wgsl.expected.ir.msl
index 2d3dfdc..c63c5f8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/35ee69.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/35ee69.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_35ee69(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_35ee69 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_35ee69(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_35ee69
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35ee69(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_35ee69
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_35ee69(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_35ee69
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/378a65.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/378a65.wgsl.expected.ir.msl
index 3900345..cefaab6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/378a65.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/378a65.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_378a65(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_378a65 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_378a65(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_378a65
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_378a65(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_378a65
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_378a65(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_378a65
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/382b16.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/382b16.wgsl.expected.ir.msl
index 4ca193c..9e84fb0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/382b16.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/382b16.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_382b16(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_382b16 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_382b16(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_382b16
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_382b16(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_382b16
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_382b16(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_382b16
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3963d0.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3963d0.wgsl.expected.ir.msl
index ca082b8..adf6252 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3963d0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3963d0.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3963d0(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3963d0 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube_array<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3963d0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_3963d0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3963d0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_3963d0
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3963d0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_3963d0
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/397dab.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/397dab.wgsl.expected.ir.msl
index 1e11e55..789e47e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/397dab.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/397dab.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_397dab(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_397dab = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_397dab(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_397dab
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_397dab(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_397dab
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_397dab(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_397dab
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3a5bb1.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3a5bb1.wgsl.expected.ir.msl
index a025279..7e826c5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3a5bb1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3a5bb1.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3a5bb1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3a5bb1 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3a5bb1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3a5bb1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a5bb1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3a5bb1
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a5bb1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3a5bb1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3a7b69.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3a7b69.wgsl.expected.ir.msl
index 120e276..0fcdd6e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3a7b69.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3a7b69.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3a7b69(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3a7b69 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3a7b69(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3a7b69
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a7b69(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3a7b69
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3a7b69(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3a7b69
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3af3e7.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3af3e7.wgsl.expected.ir.msl
index c68bbe6..be19d1b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3af3e7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3af3e7.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_3af3e7(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3af3e7 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3af3e7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3af3e7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3af3e7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3af3e7
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3af3e7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3af3e7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3b38f6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3b38f6.wgsl.expected.ir.msl
index 6dacb37..b2b2b91 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3b38f6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3b38f6.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3b38f6(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3b38f6 = func():void {
- $B2: {
- %4:texture_depth_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3b38f6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3b38f6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3b38f6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3b38f6
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3b38f6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3b38f6
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3baab5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3baab5.wgsl.expected.ir.msl
index 0b67c6a..2928021 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3baab5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3baab5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3baab5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3baab5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3baab5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3baab5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3baab5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3baab5
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3baab5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3baab5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3c66f0.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3c66f0.wgsl.expected.ir.msl
index 2c15c17..eaeda23 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3c66f0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3c66f0.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3c66f0(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3c66f0 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube_array<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3c66f0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_3c66f0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3c66f0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_3c66f0
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3c66f0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_3c66f0
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3f3474.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3f3474.wgsl.expected.ir.msl
index 4bf0dfb..03df67a 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3f3474.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3f3474.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3f3474(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3f3474 = func():void {
- $B2: {
- %4:texture_multisampled_2d<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3f3474(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3f3474
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3f3474(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3f3474
- ret
- }
+kernel void compute_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3f3474(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3f3474
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3fc3dc.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3fc3dc.wgsl.expected.ir.msl
index 54978b2..9017ca2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3fc3dc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3fc3dc.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3fc3dc(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3fc3dc = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d_array<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3fc3dc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_3fc3dc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3fc3dc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_3fc3dc
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3fc3dc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_3fc3dc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/3ff0a5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/3ff0a5.wgsl.expected.ir.msl
index c51a938..986fa1c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/3ff0a5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/3ff0a5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_3ff0a5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_3ff0a5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_3ff0a5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_3ff0a5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3ff0a5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_3ff0a5
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_3ff0a5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_3ff0a5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40c671.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/40c671.wgsl.expected.ir.msl
index 25a3c15..7bae585 100644
--- a/test/tint/builtins/gen/var/textureDimensions/40c671.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/40c671.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40c671(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40c671 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40c671(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40c671
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40c671(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40c671
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40c671(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40c671
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40da20.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/40da20.wgsl.expected.ir.msl
index 208291e..cbdd6e7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/40da20.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/40da20.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40da20(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40da20 = func():void {
- $B2: {
- %4:texture_storage_2d<r8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40da20(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40da20
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40da20(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40da20
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40da20(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40da20
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/40ecf4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/40ecf4.wgsl.expected.ir.msl
index c705907..7672d7b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/40ecf4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/40ecf4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_40ecf4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_40ecf4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_40ecf4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_40ecf4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40ecf4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_40ecf4
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_40ecf4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_40ecf4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/41545f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/41545f.wgsl.expected.ir.msl
index 2fa16a6..3bc56f0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/41545f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/41545f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_41545f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_41545f = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_41545f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_41545f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_41545f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_41545f
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_41545f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_41545f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/423519.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/423519.wgsl.expected.ir.msl
index 53deb29..e620ac6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/423519.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/423519.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_423519(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_423519 = func():void {
- $B2: {
- %4:texture_storage_3d<r32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_423519(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_423519
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_423519(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_423519
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_423519(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_423519
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/439651.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/439651.wgsl.expected.ir.msl
index 0217d47..050d7b9 100644
--- a/test/tint/builtins/gen/var/textureDimensions/439651.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/439651.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_439651(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_439651 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_439651(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_439651
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_439651(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_439651
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_439651(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_439651
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/445376.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/445376.wgsl.expected.ir.msl
index a204183..5c45362 100644
--- a/test/tint/builtins/gen/var/textureDimensions/445376.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/445376.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_445376(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_445376 = func():void {
- $B2: {
- %4:texture_2d_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_445376(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_445376
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_445376(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_445376
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_445376(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_445376
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/44b358.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/44b358.wgsl.expected.ir.msl
index 43f5263..213a904 100644
--- a/test/tint/builtins/gen/var/textureDimensions/44b358.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/44b358.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_44b358(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_44b358 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_44b358(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_44b358
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_44b358(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_44b358
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_44b358(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_44b358
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/452fc1.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/452fc1.wgsl.expected.ir.msl
index 5745a04..f42ee2f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/452fc1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/452fc1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_452fc1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_452fc1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_452fc1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_452fc1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_452fc1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_452fc1
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_452fc1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_452fc1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/46f0fc.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/46f0fc.wgsl.expected.ir.msl
index c3a792c..b6907bb 100644
--- a/test/tint/builtins/gen/var/textureDimensions/46f0fc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/46f0fc.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_46f0fc(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_46f0fc = func():void {
- $B2: {
- %4:texture_2d_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_46f0fc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_46f0fc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_46f0fc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_46f0fc
- ret
- }
+kernel void compute_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_46f0fc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_46f0fc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4716a4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/4716a4.wgsl.expected.ir.msl
index fd0adfb..d878f96 100644
--- a/test/tint/builtins/gen/var/textureDimensions/4716a4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/4716a4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4716a4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4716a4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4716a4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4716a4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4716a4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4716a4
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4716a4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4716a4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/475c10.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/475c10.wgsl.expected.ir.msl
index ef7d399..1536dec 100644
--- a/test/tint/builtins/gen/var/textureDimensions/475c10.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/475c10.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_475c10(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_475c10 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_475c10(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_475c10
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_475c10(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_475c10
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_475c10(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_475c10
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/49a067.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/49a067.wgsl.expected.ir.msl
index 4794aa5..4779bef 100644
--- a/test/tint/builtins/gen/var/textureDimensions/49a067.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/49a067.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_49a067(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_49a067 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_49a067(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_49a067
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_49a067(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_49a067
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_49a067(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_49a067
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4acec7.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/4acec7.wgsl.expected.ir.msl
index 3c1c43b..e8582f2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/4acec7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/4acec7.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4acec7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4acec7 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4acec7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4acec7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4acec7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4acec7
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4acec7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4acec7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4b26ef.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/4b26ef.wgsl.expected.ir.msl
index 50f413f..95c0033 100644
--- a/test/tint/builtins/gen/var/textureDimensions/4b26ef.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/4b26ef.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4b26ef(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4b26ef = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4b26ef(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4b26ef
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4b26ef(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4b26ef
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4b26ef(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4b26ef
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4be71b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/4be71b.wgsl.expected.ir.msl
index 11f227a..5bffd21 100644
--- a/test/tint/builtins/gen/var/textureDimensions/4be71b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/4be71b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4be71b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4be71b = func():void {
- $B2: {
- %4:texture_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4be71b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4be71b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4be71b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4be71b
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4be71b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4be71b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/4d1f71.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/4d1f71.wgsl.expected.ir.msl
index 0dba440..7de8086 100644
--- a/test/tint/builtins/gen/var/textureDimensions/4d1f71.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/4d1f71.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_4d1f71(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_4d1f71 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_4d1f71(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_4d1f71
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4d1f71(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_4d1f71
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_4d1f71(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_4d1f71
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/528c0e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/528c0e.wgsl.expected.ir.msl
index ea69984..9bfebc7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/528c0e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/528c0e.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_528c0e(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_528c0e = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d_array<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_528c0e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_528c0e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_528c0e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_528c0e
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_528c0e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_528c0e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/52cf60.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/52cf60.wgsl.expected.ir.msl
index 531b168..74ff9ed 100644
--- a/test/tint/builtins/gen/var/textureDimensions/52cf60.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/52cf60.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_52cf60(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_52cf60 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_52cf60(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_52cf60
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_52cf60(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_52cf60
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_52cf60(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_52cf60
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/534ef8.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/534ef8.wgsl.expected.ir.msl
index f968e3c..e25eed4 100644
--- a/test/tint/builtins/gen/var/textureDimensions/534ef8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/534ef8.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_534ef8(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_534ef8 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_534ef8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_534ef8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_534ef8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_534ef8
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_534ef8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_534ef8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/542c62.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/542c62.wgsl.expected.ir.msl
index ecbc4a0..1fd7a2f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/542c62.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/542c62.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_542c62(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_542c62 = func():void {
- $B2: {
- %4:texture_storage_1d<r8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_542c62(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_542c62
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_542c62(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_542c62
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_542c62(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_542c62
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/58a82d.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/58a82d.wgsl.expected.ir.msl
index 2e1f885..bc33d41 100644
--- a/test/tint/builtins/gen/var/textureDimensions/58a82d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/58a82d.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_58a82d(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_58a82d = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_58a82d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_58a82d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_58a82d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_58a82d
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_58a82d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_58a82d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/591981.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/591981.wgsl.expected.ir.msl
index 97fd934..8af8435 100644
--- a/test/tint/builtins/gen/var/textureDimensions/591981.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/591981.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_591981(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_591981 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_591981(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_591981
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_591981(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_591981
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_591981(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_591981
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/599ab5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/599ab5.wgsl.expected.ir.msl
index 25db417..df671d0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/599ab5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/599ab5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_599ab5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_599ab5 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_599ab5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_599ab5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_599ab5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_599ab5
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_599ab5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_599ab5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/5b4b10.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/5b4b10.wgsl.expected.ir.msl
index 5d70969..96c1bc3 100644
--- a/test/tint/builtins/gen/var/textureDimensions/5b4b10.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/5b4b10.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_5b4b10(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_5b4b10 = func():void {
- $B2: {
- %4:texture_storage_3d<bgra8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_5b4b10(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_5b4b10
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5b4b10(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_5b4b10
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5b4b10(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_5b4b10
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/5df042.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/5df042.wgsl.expected.ir.msl
index 18e817d..4f7edf7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/5df042.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/5df042.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_5df042(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_5df042 = func():void {
- $B2: {
- %4:texture_1d<i32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_5df042(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_5df042
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5df042(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_5df042
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_5df042(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_5df042
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/607979.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/607979.wgsl.expected.ir.msl
index 9e9f649..db2fcee 100644
--- a/test/tint/builtins/gen/var/textureDimensions/607979.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/607979.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_607979(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_607979 = func():void {
- $B2: {
- %4:texture_storage_1d<r32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_607979(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_607979
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_607979(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_607979
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_607979(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_607979
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/609d34.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/609d34.wgsl.expected.ir.msl
index 2a9cae2..de8ac6b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/609d34.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/609d34.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_609d34(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_609d34 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8snorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_609d34(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_609d34
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_609d34(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_609d34
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_609d34(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_609d34
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/62cb5a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/62cb5a.wgsl.expected.ir.msl
index 3131f5a..1ec04cd 100644
--- a/test/tint/builtins/gen/var/textureDimensions/62cb5a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/62cb5a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_62cb5a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_62cb5a = func():void {
- $B2: {
- %4:texture_2d_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_62cb5a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_62cb5a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62cb5a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_62cb5a
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62cb5a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_62cb5a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/62e7ae.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/62e7ae.wgsl.expected.ir.msl
index 4216195..7eccb11 100644
--- a/test/tint/builtins/gen/var/textureDimensions/62e7ae.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/62e7ae.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_62e7ae(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_62e7ae = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_62e7ae(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_62e7ae
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62e7ae(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_62e7ae
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_62e7ae(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_62e7ae
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/64dc74.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/64dc74.wgsl.expected.ir.msl
index 09cccb3..5fc8a0e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/64dc74.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/64dc74.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_64dc74(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_64dc74 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_64dc74(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_64dc74
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_64dc74(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_64dc74
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_64dc74(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_64dc74
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/674058.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/674058.wgsl.expected.ir.msl
index 01f1ff4..03bcfc6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/674058.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/674058.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_674058(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_674058 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_674058(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_674058
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_674058(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_674058
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_674058(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_674058
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6dae40.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/6dae40.wgsl.expected.ir.msl
index adb7d86..311c8f9 100644
--- a/test/tint/builtins/gen/var/textureDimensions/6dae40.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/6dae40.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6dae40(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6dae40 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6dae40(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6dae40
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dae40(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6dae40
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dae40(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6dae40
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6dbef4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/6dbef4.wgsl.expected.ir.msl
index 824418f..ff3521c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/6dbef4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/6dbef4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6dbef4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6dbef4 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6dbef4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6dbef4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dbef4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6dbef4
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6dbef4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6dbef4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6e6c7a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/6e6c7a.wgsl.expected.ir.msl
index f03e383..e544c0b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/6e6c7a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/6e6c7a.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6e6c7a(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6e6c7a = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_3d<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6e6c7a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_6e6c7a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e6c7a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_6e6c7a
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e6c7a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_6e6c7a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6e72c5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/6e72c5.wgsl.expected.ir.msl
index 6b1da73..4e23d00 100644
--- a/test/tint/builtins/gen/var/textureDimensions/6e72c5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/6e72c5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6e72c5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6e72c5 = func():void {
- $B2: {
- %4:texture_storage_2d<r32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6e72c5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_6e72c5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e72c5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_6e72c5
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6e72c5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_6e72c5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/6f1b5d.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/6f1b5d.wgsl.expected.ir.msl
index b6fe6bf..2661c58 100644
--- a/test/tint/builtins/gen/var/textureDimensions/6f1b5d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/6f1b5d.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_6f1b5d(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_6f1b5d = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_depth_2d = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_6f1b5d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_6f1b5d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6f1b5d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_6f1b5d
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_6f1b5d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_6f1b5d
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/709357.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/709357.wgsl.expected.ir.msl
index 61d2869..b27ed02 100644
--- a/test/tint/builtins/gen/var/textureDimensions/709357.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/709357.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_709357(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_709357 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_709357(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_709357
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_709357(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_709357
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_709357(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_709357
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7228de.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7228de.wgsl.expected.ir.msl
index 79806b5..7355e69 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7228de.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7228de.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7228de(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7228de = func():void {
- $B2: {
- %4:texture_storage_1d<r32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7228de(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7228de
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7228de(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7228de
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7228de(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7228de
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7327fa.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7327fa.wgsl.expected.ir.msl
index 16fb52c..df4c8ef 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7327fa.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7327fa.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7327fa(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7327fa = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8snorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7327fa(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7327fa
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7327fa(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7327fa
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7327fa(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7327fa
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/756031.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/756031.wgsl.expected.ir.msl
index 3bf5462..0b9a41a 100644
--- a/test/tint/builtins/gen/var/textureDimensions/756031.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/756031.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_756031(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_756031 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_3d<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_756031(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_756031
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756031(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_756031
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756031(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_756031
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/756304.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/756304.wgsl.expected.ir.msl
index b11235e..051ee3b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/756304.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/756304.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_756304(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_756304 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_756304(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_756304
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756304(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_756304
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_756304(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_756304
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/790e57.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/790e57.wgsl.expected.ir.msl
index ac9fe31..238b095 100644
--- a/test/tint/builtins/gen/var/textureDimensions/790e57.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/790e57.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_790e57(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_790e57 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_790e57(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_790e57
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_790e57(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_790e57
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_790e57(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_790e57
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/797c30.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/797c30.wgsl.expected.ir.msl
index 5363267..8eb94d2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/797c30.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/797c30.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_797c30(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_797c30 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_797c30(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_797c30
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_797c30(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_797c30
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_797c30(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_797c30
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/79d168.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/79d168.wgsl.expected.ir.msl
index b3b95cf..b87c715 100644
--- a/test/tint/builtins/gen/var/textureDimensions/79d168.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/79d168.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_79d168(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_79d168 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_depth_cube = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_79d168(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_79d168
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_79d168(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_79d168
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_79d168(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_79d168
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7a3890.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7a3890.wgsl.expected.ir.msl
index 4bacd6e..953ded3 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7a3890.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7a3890.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7a3890(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7a3890 = func():void {
- $B2: {
- %4:texture_3d<u32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7a3890(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7a3890
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a3890(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7a3890
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a3890(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7a3890
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7a9e30.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7a9e30.wgsl.expected.ir.msl
index 58f4d8e..5dd23dc 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7a9e30.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7a9e30.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7a9e30(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7a9e30 = func():void {
- $B2: {
- %4:texture_cube<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7a9e30(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7a9e30
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a9e30(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7a9e30
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7a9e30(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7a9e30
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7c753b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7c753b.wgsl.expected.ir.msl
index d4ae4d4..c4b0111 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7c753b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7c753b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7c753b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7c753b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7c753b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7c753b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7c753b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7c753b
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7c753b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7c753b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7d8439.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7d8439.wgsl.expected.ir.msl
index 88fcff8..fa8047f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7d8439.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7d8439.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_7d8439(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7d8439 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7d8439(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7d8439
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7d8439(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7d8439
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7d8439(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7d8439
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/7edb05.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/7edb05.wgsl.expected.ir.msl
index eb022fb..46e72c5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/7edb05.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/7edb05.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_7edb05(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_7edb05 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_7edb05(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_7edb05
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7edb05(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_7edb05
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_7edb05(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_7edb05
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8057cb.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8057cb.wgsl.expected.ir.msl
index c1ab7fe..8ac6891 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8057cb.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8057cb.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8057cb(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8057cb = func():void {
- $B2: {
- %4:texture_storage_3d<bgra8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8057cb(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8057cb
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8057cb(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8057cb
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8057cb(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8057cb
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/841ebe.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/841ebe.wgsl.expected.ir.msl
index 17df82a..c493b1f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/841ebe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/841ebe.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_841ebe(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_841ebe = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_841ebe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_841ebe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_841ebe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_841ebe
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_841ebe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_841ebe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/84f363.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/84f363.wgsl.expected.ir.msl
index aa9df4d..ae7a2e6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/84f363.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/84f363.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_84f363(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_84f363 = func():void {
- $B2: {
- %4:texture_storage_1d<bgra8unorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_84f363(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_84f363
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_84f363(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_84f363
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_84f363(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_84f363
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/867ead.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/867ead.wgsl.expected.ir.msl
index 617e797..59df37e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/867ead.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/867ead.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_867ead(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_867ead = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8snorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_867ead(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_867ead
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_867ead(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_867ead
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_867ead(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_867ead
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/879b73.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/879b73.wgsl.expected.ir.msl
index 746ecfc..74bd7bb 100644
--- a/test/tint/builtins/gen/var/textureDimensions/879b73.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/879b73.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_879b73(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_879b73 = func():void {
- $B2: {
- %4:texture_cube_array<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_879b73(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_879b73
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_879b73(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_879b73
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_879b73(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_879b73
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/87b42d.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/87b42d.wgsl.expected.ir.msl
index 8f63c38..b072961 100644
--- a/test/tint/builtins/gen/var/textureDimensions/87b42d.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/87b42d.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_87b42d(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_87b42d = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_87b42d(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_87b42d
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_87b42d(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_87b42d
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_87b42d(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_87b42d
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/881dd4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/881dd4.wgsl.expected.ir.msl
index 74863db..ae8873d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/881dd4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/881dd4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_881dd4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_881dd4 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_881dd4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_881dd4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_881dd4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_881dd4
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_881dd4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_881dd4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8a35f9.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8a35f9.wgsl.expected.ir.msl
index c071be2..b6b7ad8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8a35f9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8a35f9.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8a35f9(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8a35f9 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8a35f9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8a35f9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8a35f9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8a35f9
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8a35f9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8a35f9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8af728.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8af728.wgsl.expected.ir.msl
index 8934ef5..bc4c83c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8af728.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8af728.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8af728(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8af728 = func():void {
- $B2: {
- %4:texture_storage_2d_array<r8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8af728(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8af728
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8af728(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8af728
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8af728(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8af728
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8e15f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8e15f4.wgsl.expected.ir.msl
index 07f2d52..5631094 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8e15f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8e15f4.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_8e15f4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8e15f4 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8e15f4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8e15f4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e15f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8e15f4
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e15f4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8e15f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8e5de6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8e5de6.wgsl.expected.ir.msl
index 5b50de8..3e14e39 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8e5de6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8e5de6.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_8e5de6(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8e5de6 = func():void {
- $B2: {
- %4:texture_storage_1d<r32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8e5de6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8e5de6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e5de6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8e5de6
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8e5de6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8e5de6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/8efd47.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/8efd47.wgsl.expected.ir.msl
index 20db69d..7dfecec 100644
--- a/test/tint/builtins/gen/var/textureDimensions/8efd47.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/8efd47.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_8efd47(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_8efd47 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_8efd47(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_8efd47
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8efd47(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_8efd47
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_8efd47(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_8efd47
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/902179.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/902179.wgsl.expected.ir.msl
index b32850f..77ce935 100644
--- a/test/tint/builtins/gen/var/textureDimensions/902179.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/902179.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_902179(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_902179 = func():void {
- $B2: {
- %4:texture_storage_3d<r32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_902179(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_902179
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_902179(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_902179
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_902179(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_902179
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/904b0f.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/904b0f.wgsl.expected.ir.msl
index 936e48b..1cdf3c8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/904b0f.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/904b0f.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_904b0f(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_904b0f = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_904b0f(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_904b0f
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_904b0f(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_904b0f
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_904b0f(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_904b0f
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/90dd74.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/90dd74.wgsl.expected.ir.msl
index 98ef490..d93429b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/90dd74.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/90dd74.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_90dd74(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_90dd74 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_90dd74(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_90dd74
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_90dd74(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_90dd74
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_90dd74(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_90dd74
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/920006.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/920006.wgsl.expected.ir.msl
index 956be95..f82d724 100644
--- a/test/tint/builtins/gen/var/textureDimensions/920006.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/920006.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_920006(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_920006 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_1d<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_920006(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_920006
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_920006(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_920006
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_920006(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_920006
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/92552e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/92552e.wgsl.expected.ir.msl
index 94b54b9..444a9a1 100644
--- a/test/tint/builtins/gen/var/textureDimensions/92552e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/92552e.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_92552e(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_92552e = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_92552e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_92552e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_92552e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_92552e
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_92552e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_92552e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9573f3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9573f3.wgsl.expected.ir.msl
index f3de2e7..d7c9da8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9573f3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9573f3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9573f3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9573f3 = func():void {
- $B2: {
- %4:texture_storage_2d<rg32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9573f3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9573f3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9573f3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9573f3
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9573f3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9573f3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/965645.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/965645.wgsl.expected.ir.msl
index 69d9637..3717cf7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/965645.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/965645.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_965645(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_965645 = func():void {
- $B2: {
- %4:texture_1d<u32> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_965645(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_965645
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_965645(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_965645
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_965645(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_965645
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/98b2d3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/98b2d3.wgsl.expected.ir.msl
index 0d26142..d4a1059 100644
--- a/test/tint/builtins/gen/var/textureDimensions/98b2d3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/98b2d3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_98b2d3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_98b2d3 = func():void {
- $B2: {
- %4:texture_cube_array<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_98b2d3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_98b2d3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_98b2d3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_98b2d3
- ret
- }
+kernel void compute_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_98b2d3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_98b2d3
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/991ea9.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/991ea9.wgsl.expected.ir.msl
index 534a380..c4bdace 100644
--- a/test/tint/builtins/gen/var/textureDimensions/991ea9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/991ea9.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_991ea9(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_991ea9 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_depth_2d = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_991ea9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_991ea9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_991ea9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_991ea9
- ret
- }
+kernel void compute_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_991ea9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_991ea9
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9b10a0.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9b10a0.wgsl.expected.ir.msl
index d9e55ec..f80a0b3 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9b10a0.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9b10a0.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9b10a0(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9b10a0 = func():void {
- $B2: {
- %4:texture_storage_2d_array<bgra8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9b10a0(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9b10a0
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b10a0(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9b10a0
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b10a0(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9b10a0
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9b223b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9b223b.wgsl.expected.ir.msl
index cfd4e1e..872c311 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9b223b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9b223b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9b223b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9b223b = func():void {
- $B2: {
- %4:texture_cube<f32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9b223b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9b223b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b223b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9b223b
- ret
- }
+kernel void compute_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9b223b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9b223b
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9baf27.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9baf27.wgsl.expected.ir.msl
index 3e47169..c3c0403 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9baf27.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9baf27.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9baf27(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9baf27 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9baf27(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_9baf27
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9baf27(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_9baf27
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9baf27(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_9baf27
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9c7a00.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9c7a00.wgsl.expected.ir.msl
index 04ab59b..6497117 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9c7a00.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9c7a00.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_9c7a00(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9c7a00 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_1d<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9c7a00(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_9c7a00
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9c7a00(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_9c7a00
- ret
- }
+kernel void compute_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9c7a00(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_9c7a00
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9cd4ca.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9cd4ca.wgsl.expected.ir.msl
index e1be989..37a018c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9cd4ca.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9cd4ca.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9cd4ca(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9cd4ca = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9cd4ca(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_9cd4ca
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd4ca(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_9cd4ca
- ret
- }
+kernel void compute_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd4ca(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_9cd4ca
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9cd8ad.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9cd8ad.wgsl.expected.ir.msl
index 2cafaac..8d02903 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9cd8ad.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9cd8ad.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9cd8ad(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9cd8ad = func():void {
- $B2: {
- %4:texture_storage_3d<rg32float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9cd8ad(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9cd8ad
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd8ad(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9cd8ad
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9cd8ad(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9cd8ad
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9d0bac.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9d0bac.wgsl.expected.ir.msl
index 112a8d0..2773b27 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9d0bac.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9d0bac.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9d0bac(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9d0bac = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9d0bac(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9d0bac
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d0bac(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9d0bac
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d0bac(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9d0bac
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9d68b8.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9d68b8.wgsl.expected.ir.msl
index 72d63e4..402c0f1 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9d68b8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9d68b8.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_9d68b8(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9d68b8 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8snorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9d68b8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9d68b8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d68b8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9d68b8
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9d68b8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9d68b8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9dc27a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9dc27a.wgsl.expected.ir.msl
index 69c15a9..7a003a5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9dc27a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9dc27a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9dc27a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9dc27a = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9dc27a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9dc27a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9dc27a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9dc27a
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9dc27a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9dc27a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9e0794.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9e0794.wgsl.expected.ir.msl
index 0f787e3..b50acc2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9e0794.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9e0794.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9e0794(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9e0794 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d_array<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9e0794(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_9e0794
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9e0794(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_9e0794
- ret
- }
+kernel void compute_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9e0794(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_9e0794
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/9fcc3b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/9fcc3b.wgsl.expected.ir.msl
index e3ad776..bff6553 100644
--- a/test/tint/builtins/gen/var/textureDimensions/9fcc3b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/9fcc3b.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_9fcc3b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_9fcc3b = func():void {
- $B2: {
- %4:texture_depth_cube_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_9fcc3b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_9fcc3b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9fcc3b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_9fcc3b
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_9fcc3b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_9fcc3b
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a1598a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a1598a.wgsl.expected.ir.msl
index fd21c6f..8bd00ca 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a1598a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a1598a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube_array<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a1598a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a1598a = func():void {
- $B2: {
- %4:texture_cube_array<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a1598a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a1598a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a1598a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a1598a
- ret
- }
+kernel void compute_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a1598a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a1598a
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a20ba2.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a20ba2.wgsl.expected.ir.msl
index fd6e2c5..678f89f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a20ba2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a20ba2.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a20ba2(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a20ba2 = func():void {
- $B2: {
- %4:texture_storage_3d<r8unorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a20ba2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a20ba2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a20ba2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a20ba2
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a20ba2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a20ba2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a25d9b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a25d9b.wgsl.expected.ir.msl
index 0bb63bb..a85de12 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a25d9b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a25d9b.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a25d9b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a25d9b = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8unorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a25d9b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a25d9b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a25d9b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a25d9b
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a25d9b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a25d9b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a2ba5e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a2ba5e.wgsl.expected.ir.msl
index 42501a7..99d6f23 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a2ba5e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a2ba5e.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a2ba5e(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a2ba5e = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a2ba5e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_a2ba5e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a2ba5e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_a2ba5e
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a2ba5e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_a2ba5e
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a3ea91.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a3ea91.wgsl.expected.ir.msl
index 0686639..1573c11 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a3ea91.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a3ea91.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a3ea91(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a3ea91 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a3ea91(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a3ea91
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a3ea91(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a3ea91
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a3ea91(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a3ea91
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a48049.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a48049.wgsl.expected.ir.msl
index 902d599..57e5f92 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a48049.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a48049.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a48049(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a48049 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a48049(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_a48049
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a48049(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_a48049
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a48049(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_a48049
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a4cd56.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a4cd56.wgsl.expected.ir.msl
index 4961dc8..0b12217 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a4cd56.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a4cd56.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a4cd56(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a4cd56 = func():void {
- $B2: {
- %4:texture_depth_2d_array = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a4cd56(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a4cd56
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a4cd56(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a4cd56
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a4cd56(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a4cd56
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/a65776.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/a65776.wgsl.expected.ir.msl
index 2a10b20..a084bc7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/a65776.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/a65776.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_a65776(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_a65776 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_a65776(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_a65776
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a65776(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_a65776
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_a65776(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_a65776
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/aa4353.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/aa4353.wgsl.expected.ir.msl
index 8f68441..38d6210 100644
--- a/test/tint/builtins/gen/var/textureDimensions/aa4353.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/aa4353.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_aa4353(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_aa4353 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_aa4353(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_aa4353
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aa4353(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_aa4353
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aa4353(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_aa4353
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/aac604.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/aac604.wgsl.expected.ir.msl
index 93050c6..71589a1 100644
--- a/test/tint/builtins/gen/var/textureDimensions/aac604.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/aac604.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_aac604(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_aac604 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_1d<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_aac604(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_aac604
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aac604(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_aac604
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_aac604(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_aac604
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ad7d3b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/ad7d3b.wgsl.expected.ir.msl
index 1a0e6ca..ab1a5fa 100644
--- a/test/tint/builtins/gen/var/textureDimensions/ad7d3b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/ad7d3b.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ad7d3b(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ad7d3b = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ad7d3b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ad7d3b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ad7d3b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ad7d3b
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ad7d3b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ad7d3b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/af46ab.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/af46ab.wgsl.expected.ir.msl
index 949d892..2cdf5b7 100644
--- a/test/tint/builtins/gen/var/textureDimensions/af46ab.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/af46ab.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_af46ab(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_af46ab = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_af46ab(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_af46ab
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_af46ab(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_af46ab
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_af46ab(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_af46ab
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b3ab5e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b3ab5e.wgsl.expected.ir.msl
index 9677743..566dea0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b3ab5e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b3ab5e.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b3ab5e(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b3ab5e = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_cube_array<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b3ab5e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_b3ab5e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b3ab5e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_b3ab5e
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b3ab5e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_b3ab5e
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b46d97.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b46d97.wgsl.expected.ir.msl
index 4c390fb..7cb4288 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b46d97.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b46d97.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b46d97(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b46d97 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_1d<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b46d97(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_b46d97
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b46d97(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_b46d97
- ret
- }
+kernel void compute_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b46d97(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_b46d97
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b51345.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b51345.wgsl.expected.ir.msl
index e4f0554..0df82aa 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b51345.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b51345.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b51345(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b51345 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b51345(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b51345
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b51345(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b51345
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b51345(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b51345
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b56112.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b56112.wgsl.expected.ir.msl
index 60af298..39bf1a0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b56112.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b56112.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b56112(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b56112 = func():void {
- $B2: {
- %4:texture_storage_2d<r32uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b56112(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b56112
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b56112(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b56112
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b56112(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b56112
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b5ba03.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b5ba03.wgsl.expected.ir.msl
index 34d233d..df9d273 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b5ba03.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b5ba03.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b5ba03(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b5ba03 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16float, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b5ba03(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b5ba03
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b5ba03(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b5ba03
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b5ba03(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b5ba03
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b6bbf4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b6bbf4.wgsl.expected.ir.msl
index e676ab1..21625c4 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b6bbf4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b6bbf4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_b6bbf4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b6bbf4 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b6bbf4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b6bbf4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b6bbf4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b6bbf4
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b6bbf4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b6bbf4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/b9e7ef.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/b9e7ef.wgsl.expected.ir.msl
index 2489e6e..51b2cbb 100644
--- a/test/tint/builtins/gen/var/textureDimensions/b9e7ef.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/b9e7ef.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_b9e7ef(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_b9e7ef = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_b9e7ef(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_b9e7ef
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b9e7ef(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_b9e7ef
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_b9e7ef(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_b9e7ef
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bb95d9.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/bb95d9.wgsl.expected.ir.msl
index 70d133a..55c9f1f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/bb95d9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/bb95d9.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bb95d9(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bb95d9 = func():void {
- $B2: {
- %4:texture_3d<f32> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bb95d9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bb95d9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bb95d9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bb95d9
- ret
- }
+kernel void compute_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bb95d9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bb95d9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bbe285.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/bbe285.wgsl.expected.ir.msl
index 499807d..bed3ee6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/bbe285.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/bbe285.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba8sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bbe285(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bbe285 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba8sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bbe285(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bbe285
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bbe285(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bbe285
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bbe285(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bbe285
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bd94c8.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/bd94c8.wgsl.expected.ir.msl
index 2ea5677..4320809 100644
--- a/test/tint/builtins/gen/var/textureDimensions/bd94c8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/bd94c8.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bd94c8(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bd94c8 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_depth_cube_array = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bd94c8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_bd94c8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bd94c8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_bd94c8
- ret
- }
+kernel void compute_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bd94c8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_bd94c8
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bec716.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/bec716.wgsl.expected.ir.msl
index 5a4f560..8ff1b9c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/bec716.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/bec716.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bec716(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bec716 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32float, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bec716(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bec716
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bec716(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bec716
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bec716(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bec716
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/bf9170.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/bf9170.wgsl.expected.ir.msl
index c83ca85..47cb065 100644
--- a/test/tint/builtins/gen/var/textureDimensions/bf9170.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/bf9170.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8snorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_bf9170(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_bf9170 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8snorm, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_bf9170(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_bf9170
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bf9170(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_bf9170
- ret
- }
+kernel void compute_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_bf9170(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_bf9170
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c1189e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c1189e.wgsl.expected.ir.msl
index d2615a1..828b16c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c1189e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c1189e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c1189e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c1189e = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c1189e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c1189e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1189e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c1189e
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1189e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c1189e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c1dbf6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c1dbf6.wgsl.expected.ir.msl
index 514e05f..59ca77b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c1dbf6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c1dbf6.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c1dbf6(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c1dbf6 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c1dbf6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c1dbf6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1dbf6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c1dbf6
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c1dbf6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c1dbf6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c2cdd3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c2cdd3.wgsl.expected.ir.msl
index 9688623..1ebf268 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c2cdd3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c2cdd3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_ms<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_multisampled_2d, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c2cdd3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c2cdd3 = func():void {
- $B2: {
- %4:texture_depth_multisampled_2d = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c2cdd3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c2cdd3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c2cdd3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c2cdd3
- ret
- }
+kernel void compute_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c2cdd3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c2cdd3
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_ms<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c44fc1.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c44fc1.wgsl.expected.ir.msl
index 9ea7ecd..d6e7c10 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c44fc1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c44fc1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c44fc1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c44fc1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c44fc1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c44fc1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c44fc1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c44fc1
- ret
- }
+kernel void compute_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c44fc1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c44fc1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c5a36e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c5a36e.wgsl.expected.ir.msl
index 36f79de..c4466ef 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c5a36e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c5a36e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c5a36e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c5a36e = func():void {
- $B2: {
- %4:texture_depth_cube = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c5a36e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_c5a36e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c5a36e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_c5a36e
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c5a36e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_c5a36e
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/c871f3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/c871f3.wgsl.expected.ir.msl
index 272ba89..551bc17 100644
--- a/test/tint/builtins/gen/var/textureDimensions/c871f3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/c871f3.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_c871f3(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_c871f3 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_3d<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_c871f3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_c871f3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c871f3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_c871f3
- ret
- }
+kernel void compute_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_c871f3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_c871f3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cad3b7.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/cad3b7.wgsl.expected.ir.msl
index d8afa22..26c08c0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/cad3b7.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/cad3b7.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cad3b7(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cad3b7 = func():void {
- $B2: {
- %4:texture_storage_2d<r32sint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cad3b7(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cad3b7
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cad3b7(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cad3b7
- ret
- }
+kernel void compute_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cad3b7(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cad3b7
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cc947b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/cc947b.wgsl.expected.ir.msl
index 3f96199..802d668 100644
--- a/test/tint/builtins/gen/var/textureDimensions/cc947b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/cc947b.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cc947b(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cc947b = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8snorm, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cc947b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cc947b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cc947b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cc947b
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cc947b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cc947b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cd3033.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/cd3033.wgsl.expected.ir.msl
index 8b882cd..194e932 100644
--- a/test/tint/builtins/gen/var/textureDimensions/cd3033.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/cd3033.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cd3033(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cd3033 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rg32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cd3033(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cd3033
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cd3033(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cd3033
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cd3033(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cd3033
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cedabd.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/cedabd.wgsl.expected.ir.msl
index 16fab76..4cd6281 100644
--- a/test/tint/builtins/gen/var/textureDimensions/cedabd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/cedabd.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_cedabd(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cedabd = func():void {
- $B2: {
- %4:texture_storage_1d<rg32sint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cedabd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_cedabd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cedabd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_cedabd
- ret
- }
+kernel void compute_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cedabd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_cedabd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/cf2b50.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/cf2b50.wgsl.expected.ir.msl
index f76754e..79804e1 100644
--- a/test/tint/builtins/gen/var/textureDimensions/cf2b50.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/cf2b50.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../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)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_cf2b50(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_cf2b50 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_cube_array<f32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_cf2b50(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_cf2b50
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cf2b50(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_cf2b50
- ret
- }
+kernel void compute_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_cf2b50(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_cf2b50
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d0778e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d0778e.wgsl.expected.ir.msl
index 2766e73..2455f03 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d0778e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d0778e.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d0778e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d0778e = func():void {
- $B2: {
- %4:texture_storage_3d<rg32uint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d0778e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d0778e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d0778e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d0778e
- ret
- }
+kernel void compute_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d0778e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d0778e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d08a94.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d08a94.wgsl.expected.ir.msl
index 2409557..4cddf39 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d08a94.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d08a94.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba16sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_d08a94(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d08a94 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba16sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d08a94(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d08a94
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d08a94(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d08a94
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d08a94(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d08a94
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d1b882.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d1b882.wgsl.expected.ir.msl
index 01afc41..0bbeb72 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d1b882.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d1b882.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d1b882(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d1b882 = func():void {
- $B2: {
- %4:texture_storage_2d_array<bgra8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d1b882(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d1b882
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d1b882(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d1b882
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d1b882(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d1b882
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d3accd.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d3accd.wgsl.expected.ir.msl
index 21b96b3..b44a625 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d3accd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d3accd.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_cube, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d3accd(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d3accd = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_depth_cube = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d3accd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_d3accd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d3accd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_d3accd
- ret
- }
+kernel void compute_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d3accd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_d3accd
- ret
- }
+vertex vertex_main_outputs vertex_main(depthcube<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d44ac3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d44ac3.wgsl.expected.ir.msl
index 54c3236..d789c25 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d44ac3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d44ac3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<bgra8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d44ac3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d44ac3 = func():void {
- $B2: {
- %4:texture_storage_2d<bgra8unorm, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d44ac3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d44ac3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44ac3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d44ac3
- ret
- }
+kernel void compute_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44ac3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d44ac3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d44dd1.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d44dd1.wgsl.expected.ir.msl
index 3bd1f75..d2e5cb99 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d44dd1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d44dd1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d44dd1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d44dd1 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16uint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d44dd1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d44dd1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44dd1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d44dd1
- ret
- }
+kernel void compute_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d44dd1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d44dd1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d63c28.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d63c28.wgsl.expected.ir.msl
index 5a40033..ca088ba 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d63c28.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d63c28.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d63c28(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d63c28 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d63c28(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d63c28
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d63c28(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d63c28
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d63c28(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d63c28
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d6f3cf.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d6f3cf.wgsl.expected.ir.msl
index 3db25b3..7445ee2 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d6f3cf.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d6f3cf.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d6f3cf(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d6f3cf = func():void {
- $B2: {
- %4:texture_storage_2d<r32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d6f3cf(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d6f3cf
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d6f3cf(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d6f3cf
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d6f3cf(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d6f3cf
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d8ba68.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d8ba68.wgsl.expected.ir.msl
index a06d2a2..e7e50d4 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d8ba68.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d8ba68.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d8ba68(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d8ba68 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d8ba68(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d8ba68
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8ba68(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d8ba68
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8ba68(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d8ba68
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/d8f887.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/d8f887.wgsl.expected.ir.msl
index ae94e9a..e1fbf8e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/d8f887.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/d8f887.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba8uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_d8f887(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_d8f887 = func():void {
- $B2: {
- %4:texture_storage_3d<rgba8uint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_d8f887(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_d8f887
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8f887(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_d8f887
- ret
- }
+kernel void compute_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_d8f887(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_d8f887
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/da30d2.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/da30d2.wgsl.expected.ir.msl
index 39888a1..2e7fde3 100644
--- a/test/tint/builtins/gen/var/textureDimensions/da30d2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/da30d2.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_da30d2(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_da30d2 = func():void {
- $B2: {
- %4:texture_storage_1d<rgba32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_da30d2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_da30d2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_da30d2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_da30d2
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_da30d2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_da30d2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/daf0fe.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/daf0fe.wgsl.expected.ir.msl
index 5df2122..03b9615 100644
--- a/test/tint/builtins/gen/var/textureDimensions/daf0fe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/daf0fe.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16float, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_daf0fe(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_daf0fe = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16float, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_daf0fe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_daf0fe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_daf0fe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_daf0fe
- ret
- }
+kernel void compute_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_daf0fe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_daf0fe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/db7131.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/db7131.wgsl.expected.ir.msl
index 9ad882b..d259cc8 100644
--- a/test/tint/builtins/gen/var/textureDimensions/db7131.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/db7131.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_db7131(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_db7131 = func():void {
- $B2: {
- %4:texture_storage_3d<r32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_db7131(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_db7131
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_db7131(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_db7131
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_db7131(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_db7131
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dc83ce.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/dc83ce.wgsl.expected.ir.msl
index fe3c647..5520dd5 100644
--- a/test/tint/builtins/gen/var/textureDimensions/dc83ce.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/dc83ce.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<r32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dc83ce(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dc83ce = func():void {
- $B2: {
- %4:texture_storage_2d<r32uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dc83ce(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_dc83ce
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dc83ce(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_dc83ce
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dc83ce(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_dc83ce
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/de03c6.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/de03c6.wgsl.expected.ir.msl
index 9078219..6c289ca 100644
--- a/test/tint/builtins/gen/var/textureDimensions/de03c6.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/de03c6.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32uint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_de03c6(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_de03c6 = func():void {
- $B2: {
- %4:texture_storage_1d<r32uint, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_de03c6(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_de03c6
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_de03c6(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_de03c6
- ret
- }
+kernel void compute_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_de03c6(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_de03c6
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dee461.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/dee461.wgsl.expected.ir.msl
index 5f041ee..994934e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/dee461.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/dee461.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dee461(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dee461 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba8snorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dee461(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_dee461
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dee461(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_dee461
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dee461(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_dee461
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/dfdc32.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/dfdc32.wgsl.expected.ir.msl
index fced1c6..8390251 100644
--- a/test/tint/builtins/gen/var/textureDimensions/dfdc32.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/dfdc32.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_dfdc32(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_dfdc32 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_depth_2d_array = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_dfdc32(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_dfdc32
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dfdc32(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_dfdc32
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_dfdc32(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_dfdc32
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e122fe.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e122fe.wgsl.expected.ir.msl
index 9fa70a2..e224865 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e122fe.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e122fe.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rgba8snorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_e122fe(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e122fe = func():void {
- $B2: {
- %4:texture_storage_1d<rgba8snorm, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e122fe(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e122fe
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e122fe(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e122fe
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e122fe(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e122fe
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e18a8b.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e18a8b.wgsl.expected.ir.msl
index 3e5f9f9..a498ce6 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e18a8b.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e18a8b.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e18a8b(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e18a8b = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d<u32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e18a8b(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_e18a8b
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e18a8b(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_e18a8b
- ret
- }
+kernel void compute_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e18a8b(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_e18a8b
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e4bfd2.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e4bfd2.wgsl.expected.ir.msl
index fb143d2..e29966d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e4bfd2.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e4bfd2.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<uint, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_multisampled_2d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e4bfd2(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width();
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e4bfd2 = func():void {
- $B2: {
- %4:texture_multisampled_2d<u32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e4bfd2(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e4bfd2
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4bfd2(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e4bfd2
- ret
- }
+kernel void compute_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4bfd2(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e4bfd2
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_ms<uint, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e4e310.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e4e310.wgsl.expected.ir.msl
index 971041e..b8c7800 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e4e310.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e4e310.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e4e310(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e4e310 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_2d_array<i32> = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e4e310(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_e4e310
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4e310(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_e4e310
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e4e310(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_e4e310
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e5a203.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e5a203.wgsl.expected.ir.msl
index eb65aa1..c4e1679 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e5a203.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e5a203.wgsl.expected.ir.msl
@@ -1,45 +1,34 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<uint, access::sample> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_3d<u32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e5a203(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint const v_2 = tint_module_vars.arg_0.get_height(v);
+ uint3 res = uint3(v_1, v_2, tint_module_vars.arg_0.get_depth(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e5a203 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_3d<u32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec3<u32> = textureDimensions %5, %6
- %res:ptr<function, vec3<u32>, read_write> = var, %7
- %9:vec3<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e5a203(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_e5a203
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e5a203(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_e5a203
- ret
- }
+kernel void compute_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e5a203(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_e5a203
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<uint, access::sample> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e738f4.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e738f4.wgsl.expected.ir.msl
index b50314a..ccce15c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e738f4.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e738f4.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e738f4(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e738f4 = func():void {
- $B2: {
- %4:texture_storage_3d<rg32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e738f4(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e738f4
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e738f4(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e738f4
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e738f4(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e738f4
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/e99308.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/e99308.wgsl.expected.ir.msl
index 4f612d8..6c00f7f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/e99308.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/e99308.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<uint, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba16uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_e99308(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_e99308 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba16uint, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_e99308(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_e99308
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e99308(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_e99308
- ret
- }
+kernel void compute_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_e99308(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_e99308
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<uint, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ea066c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/ea066c.wgsl.expected.ir.msl
index 9a38d3b..c95f9ff 100644
--- a/test/tint/builtins/gen/var/textureDimensions/ea066c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/ea066c.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ea066c(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ea066c = func():void {
- $B2: {
- %4:texture_storage_1d<r32float, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ea066c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ea066c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea066c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ea066c
- ret
- }
+kernel void compute_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea066c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ea066c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ea25bc.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/ea25bc.wgsl.expected.ir.msl
index 3941694..83e0421 100644
--- a/test/tint/builtins/gen/var/textureDimensions/ea25bc.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/ea25bc.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<uint, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32uint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_ea25bc(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ea25bc = func():void {
- $B2: {
- %4:texture_storage_1d<rg32uint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ea25bc(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ea25bc
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea25bc(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ea25bc
- ret
- }
+kernel void compute_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ea25bc(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ea25bc
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<uint, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/eafe19.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/eafe19.wgsl.expected.ir.msl
index 14ca50f..b8d7593 100644
--- a/test/tint/builtins/gen/var/textureDimensions/eafe19.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/eafe19.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_eafe19(tint_module_vars_struct tint_module_vars) {
+ uint arg_1 = 1u;
+ uint const v = arg_1;
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_eafe19 = func():void {
- $B2: {
- %arg_1:ptr<function, u32, read_write> = var, 1u
- %5:texture_depth_2d_array = load %arg_0
- %6:u32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_eafe19(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_eafe19
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eafe19(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_eafe19
- ret
- }
+kernel void compute_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eafe19(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_eafe19
- ret
- }
+vertex vertex_main_outputs vertex_main(depth2d_array<float, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/eb03b1.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/eb03b1.wgsl.expected.ir.msl
index 2f2c4deb..bcda284 100644
--- a/test/tint/builtins/gen/var/textureDimensions/eb03b1.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/eb03b1.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_eb03b1(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_eb03b1 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba16float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_eb03b1(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_eb03b1
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eb03b1(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_eb03b1
- ret
- }
+kernel void compute_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_eb03b1(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_eb03b1
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/ef2e58.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/ef2e58.wgsl.expected.ir.msl
index 1568ae4..365b53b 100644
--- a/test/tint/builtins/gen/var/textureDimensions/ef2e58.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/ef2e58.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<r32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_ef2e58(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_ef2e58 = func():void {
- $B2: {
- %4:texture_storage_3d<r32sint, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_ef2e58(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_ef2e58
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ef2e58(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_ef2e58
- ret
- }
+kernel void compute_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_ef2e58(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_ef2e58
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f17acd.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f17acd.wgsl.expected.ir.msl
index e047280..47d8bae 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f17acd.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f17acd.wgsl.expected.ir.msl
@@ -1,45 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_1d<f32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_f17acd(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f17acd = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_1d<f32> = load %arg_0
- %6:i32 = load %arg_1
- %7:u32 = textureDimensions %5, %6
- %res:ptr<function, u32, read_write> = var, %7
- %9:u32 = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f17acd(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_f17acd
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f17acd(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_f17acd
- ret
- }
+kernel void compute_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f17acd(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_f17acd
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::sample> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f264a3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f264a3.wgsl.expected.ir.msl
index 645e567..8729687 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f264a3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f264a3.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<int, access::write> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<rg32sint, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_f264a3(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f264a3 = func():void {
- $B2: {
- %4:texture_storage_1d<rg32sint, write> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f264a3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f264a3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f264a3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f264a3
- ret
- }
+kernel void compute_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f264a3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f264a3
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<int, access::write> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f3a2ac.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f3a2ac.wgsl.expected.ir.msl
index 6724bae..93d528f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f3a2ac.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f3a2ac.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba16float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f3a2ac(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f3a2ac = func():void {
- $B2: {
- %4:texture_storage_3d<rgba16float, write> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f3a2ac(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f3a2ac
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f3a2ac(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f3a2ac
- ret
- }
+kernel void compute_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f3a2ac(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f3a2ac
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<float, access::write> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f4321c.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f4321c.wgsl.expected.ir.msl
index 6380af3..ac93118 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f4321c.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f4321c.wgsl.expected.ir.msl
@@ -1,43 +1,32 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<int, access::read> arg_0;
+ device uint3* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_3d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec3<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f4321c(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint const v_1 = tint_module_vars.arg_0.get_height(0u);
+ uint3 res = uint3(v, v_1, tint_module_vars.arg_0.get_depth(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f4321c = func():void {
- $B2: {
- %4:texture_storage_3d<rgba32sint, read> = load %arg_0
- %5:vec3<u32> = textureDimensions %4
- %res:ptr<function, vec3<u32>, read_write> = var, %5
- %7:vec3<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f4321c(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f4321c
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4321c(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f4321c
- ret
- }
+kernel void compute_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4321c(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f4321c
- ret
- }
+vertex vertex_main_outputs vertex_main(texture3d<int, access::read> arg_0 [[texture(0)]], device uint3* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f48886.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f48886.wgsl.expected.ir.msl
index 3080663..00346b0 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f48886.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f48886.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f48886(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f48886 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f48886(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f48886
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f48886(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f48886
- ret
- }
+kernel void compute_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f48886(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f48886
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f4e469.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f4e469.wgsl.expected.ir.msl
index b5b0589..a6bd323 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f4e469.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f4e469.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<rgba32float, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f4e469(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f4e469 = func():void {
- $B2: {
- %4:texture_storage_2d<rgba32float, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f4e469(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f4e469
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4e469(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f4e469
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f4e469(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f4e469
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f626b3.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f626b3.wgsl.expected.ir.msl
index f7a92d3..51c7351 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f626b3.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f626b3.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_cube<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f626b3(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f626b3 = func():void {
- $B2: {
- %4:texture_cube<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f626b3(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f626b3
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f626b3(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f626b3
- ret
- }
+kernel void compute_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f626b3(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f626b3
- ret
- }
+vertex vertex_main_outputs vertex_main(texturecube<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f7bac5.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f7bac5.wgsl.expected.ir.msl
index fa54e1e..e81031e 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f7bac5.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f7bac5.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::read> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d_array<rgba32sint, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f7bac5(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f7bac5 = func():void {
- $B2: {
- %4:texture_storage_2d_array<rgba32sint, read> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f7bac5(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f7bac5
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f7bac5(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f7bac5
- ret
- }
+kernel void compute_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f7bac5(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f7bac5
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::read> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/f8522e.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/f8522e.wgsl.expected.ir.msl
index c56b6b9..b784112 100644
--- a/test/tint/builtins/gen/var/textureDimensions/f8522e.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/f8522e.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_f8522e(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_f8522e = func():void {
- $B2: {
- %4:texture_2d<i32> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_f8522e(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_f8522e
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f8522e(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_f8522e
- ret
- }
+kernel void compute_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_f8522e(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_f8522e
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fbb15a.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/fbb15a.wgsl.expected.ir.msl
index 2e6dd38..c278f0d 100644
--- a/test/tint/builtins/gen/var/textureDimensions/fbb15a.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/fbb15a.wgsl.expected.ir.msl
@@ -1,43 +1,31 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_2d<bgra8unorm, write>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_fbb15a(tint_module_vars_struct tint_module_vars) {
+ uint const v = tint_module_vars.arg_0.get_width(0u);
+ uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fbb15a = func():void {
- $B2: {
- %4:texture_storage_2d<bgra8unorm, write> = load %arg_0
- %5:vec2<u32> = textureDimensions %4
- %res:ptr<function, vec2<u32>, read_write> = var, %5
- %7:vec2<u32> = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fbb15a(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_fbb15a
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fbb15a(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_fbb15a
- ret
- }
+kernel void compute_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fbb15a(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_fbb15a
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d<float, access::write> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fdbae8.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/fdbae8.wgsl.expected.ir.msl
index 3b9fcc6..3b82f3f 100644
--- a/test/tint/builtins/gen/var/textureDimensions/fdbae8.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/fdbae8.wgsl.expected.ir.msl
@@ -1,43 +1,30 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::read> arg_0;
+ device uint* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_storage_1d<r8unorm, read>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, u32, read_write> = var @binding_point(2, 0)
+void textureDimensions_fdbae8(tint_module_vars_struct tint_module_vars) {
+ uint res = uint(tint_module_vars.arg_0.get_width());
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fdbae8 = func():void {
- $B2: {
- %4:texture_storage_1d<r8unorm, read> = load %arg_0
- %5:u32 = textureDimensions %4
- %res:ptr<function, u32, read_write> = var, %5
- %7:u32 = load %res
- store %prevent_dce, %7
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fdbae8(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %9:void = call %textureDimensions_fdbae8
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdbae8(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %11:void = call %textureDimensions_fdbae8
- ret
- }
+kernel void compute_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdbae8(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %13:void = call %textureDimensions_fdbae8
- ret
- }
+vertex vertex_main_outputs vertex_main(texture1d<float, access::read> arg_0 [[texture(0)]], device uint* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/textureDimensions/fdf6e9.wgsl.expected.ir.msl b/test/tint/builtins/gen/var/textureDimensions/fdf6e9.wgsl.expected.ir.msl
index 7f04ceb..c8b373c 100644
--- a/test/tint/builtins/gen/var/textureDimensions/fdf6e9.wgsl.expected.ir.msl
+++ b/test/tint/builtins/gen/var/textureDimensions/fdf6e9.wgsl.expected.ir.msl
@@ -1,45 +1,33 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<int, access::sample> arg_0;
+ device uint2* prevent_dce;
+};
+struct vertex_main_outputs {
+ float4 tint_symbol [[position]];
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: { # root
- %arg_0:ptr<handle, texture_2d_array<i32>, read> = var @binding_point(1, 0)
- %prevent_dce:ptr<storage, vec2<u32>, read_write> = var @binding_point(2, 0)
+void textureDimensions_fdf6e9(tint_module_vars_struct tint_module_vars) {
+ int arg_1 = 1;
+ uint const v = uint(arg_1);
+ uint const v_1 = tint_module_vars.arg_0.get_width(v);
+ uint2 res = uint2(v_1, tint_module_vars.arg_0.get_height(v));
+ (*tint_module_vars.prevent_dce) = res;
}
-
-%textureDimensions_fdf6e9 = func():void {
- $B2: {
- %arg_1:ptr<function, i32, read_write> = var, 1i
- %5:texture_2d_array<i32> = load %arg_0
- %6:i32 = load %arg_1
- %7:vec2<u32> = textureDimensions %5, %6
- %res:ptr<function, vec2<u32>, read_write> = var, %7
- %9:vec2<u32> = load %res
- store %prevent_dce, %9
- ret
- }
+float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
+ textureDimensions_fdf6e9(tint_module_vars);
+ return float4(0.0f);
}
-%vertex_main = @vertex func():vec4<f32> [@position] {
- $B3: {
- %11:void = call %textureDimensions_fdf6e9
- ret vec4<f32>(0.0f)
- }
+fragment void fragment_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdf6e9(tint_module_vars);
}
-%fragment_main = @fragment func():void {
- $B4: {
- %13:void = call %textureDimensions_fdf6e9
- ret
- }
+kernel void compute_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ textureDimensions_fdf6e9(tint_module_vars);
}
-%compute_main = @compute @workgroup_size(1, 1, 1) func():void {
- $B5: {
- %15:void = call %textureDimensions_fdf6e9
- ret
- }
+vertex vertex_main_outputs vertex_main(texture2d_array<int, access::sample> arg_0 [[texture(0)]], device uint2* prevent_dce [[buffer(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.arg_0=arg_0, .prevent_dce=prevent_dce};
+ return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}
-
-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/types/texture/depth/2d.wgsl.expected.ir.msl b/test/tint/types/texture/depth/2d.wgsl.expected.ir.msl
index 9a1e6cb..6411840 100644
--- a/test/tint/types/texture/depth/2d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/depth/2d.wgsl.expected.ir.msl
@@ -1,9 +1,12 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d<float, access::sample> t_f;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(depth2d<float, access::sample> t_f [[texture(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f};
+ uint const v = uint(0);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 dims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+}
diff --git a/test/tint/types/texture/depth/2d_array.wgsl.expected.ir.msl b/test/tint/types/texture/depth/2d_array.wgsl.expected.ir.msl
index 9a1e6cb..ed1361a 100644
--- a/test/tint/types/texture/depth/2d_array.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/depth/2d_array.wgsl.expected.ir.msl
@@ -1,9 +1,12 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depth2d_array<float, access::sample> t_f;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(depth2d_array<float, access::sample> t_f [[texture(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f};
+ uint const v = uint(0);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 dims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+}
diff --git a/test/tint/types/texture/depth/cube.wgsl.expected.ir.msl b/test/tint/types/texture/depth/cube.wgsl.expected.ir.msl
index 9a1e6cb..1bf4e3d 100644
--- a/test/tint/types/texture/depth/cube.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/depth/cube.wgsl.expected.ir.msl
@@ -1,9 +1,12 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube<float, access::sample> t_f;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(depthcube<float, access::sample> t_f [[texture(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f};
+ uint const v = uint(0);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 dims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+}
diff --git a/test/tint/types/texture/depth/cube_array.wgsl.expected.ir.msl b/test/tint/types/texture/depth/cube_array.wgsl.expected.ir.msl
index 9a1e6cb..13fdbb5 100644
--- a/test/tint/types/texture/depth/cube_array.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/depth/cube_array.wgsl.expected.ir.msl
@@ -1,9 +1,12 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ depthcube_array<float, access::sample> t_f;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(depthcube_array<float, access::sample> t_f [[texture(0)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f};
+ uint const v = uint(0);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 dims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+}
diff --git a/test/tint/types/texture/multisampled/2d.wgsl.expected.ir.msl b/test/tint/types/texture/multisampled/2d.wgsl.expected.ir.msl
index 9a1e6cb..6fa3750 100644
--- a/test/tint/types/texture/multisampled/2d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/multisampled/2d.wgsl.expected.ir.msl
@@ -1,9 +1,17 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_ms<float, access::read> t_f;
+ texture2d_ms<int, access::read> t_i;
+ texture2d_ms<uint, access::read> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture2d_ms<float, access::read> t_f [[texture(0)]], texture2d_ms<int, access::read> t_i [[texture(1)]], texture2d_ms<uint, access::read> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = tint_module_vars.t_f.get_width();
+ uint2 fdims = uint2(v, tint_module_vars.t_f.get_height());
+ uint const v_1 = tint_module_vars.t_i.get_width();
+ uint2 idims = uint2(v_1, tint_module_vars.t_i.get_height());
+ uint const v_2 = tint_module_vars.t_u.get_width();
+ uint2 udims = uint2(v_2, tint_module_vars.t_u.get_height());
+}
diff --git a/test/tint/types/texture/sampled/1d.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/1d.wgsl.expected.ir.msl
index 9a1e6cb..544f6ed 100644
--- a/test/tint/types/texture/sampled/1d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/1d.wgsl.expected.ir.msl
@@ -1,9 +1,14 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::sample> t_f;
+ texture1d<int, access::sample> t_i;
+ texture1d<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture1d<float, access::sample> t_f [[texture(0)]], texture1d<int, access::sample> t_i [[texture(1)]], texture1d<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint fdims = uint(tint_module_vars.t_f.get_width());
+ uint idims = uint(tint_module_vars.t_i.get_width());
+ uint udims = uint(tint_module_vars.t_u.get_width());
+}
diff --git a/test/tint/types/texture/sampled/2d.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/2d.wgsl.expected.ir.msl
index 9a1e6cb..e9b1104 100644
--- a/test/tint/types/texture/sampled/2d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/2d.wgsl.expected.ir.msl
@@ -1,9 +1,20 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::sample> t_f;
+ texture2d<int, access::sample> t_i;
+ texture2d<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture2d<float, access::sample> t_f [[texture(0)]], texture2d<int, access::sample> t_i [[texture(1)]], texture2d<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 fdims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+ uint const v_2 = uint(1);
+ uint const v_3 = tint_module_vars.t_i.get_width(v_2);
+ uint2 idims = uint2(v_3, tint_module_vars.t_i.get_height(v_2));
+ uint const v_4 = uint(1);
+ uint const v_5 = tint_module_vars.t_u.get_width(v_4);
+ uint2 udims = uint2(v_5, tint_module_vars.t_u.get_height(v_4));
+}
diff --git a/test/tint/types/texture/sampled/2d_array.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/2d_array.wgsl.expected.ir.msl
index 9a1e6cb..f1eca42 100644
--- a/test/tint/types/texture/sampled/2d_array.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/2d_array.wgsl.expected.ir.msl
@@ -1,9 +1,20 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::sample> t_f;
+ texture2d_array<int, access::sample> t_i;
+ texture2d_array<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture2d_array<float, access::sample> t_f [[texture(0)]], texture2d_array<int, access::sample> t_i [[texture(1)]], texture2d_array<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 fdims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+ uint const v_2 = uint(1);
+ uint const v_3 = tint_module_vars.t_i.get_width(v_2);
+ uint2 idims = uint2(v_3, tint_module_vars.t_i.get_height(v_2));
+ uint const v_4 = uint(1);
+ uint const v_5 = tint_module_vars.t_u.get_width(v_4);
+ uint2 udims = uint2(v_5, tint_module_vars.t_u.get_height(v_4));
+}
diff --git a/test/tint/types/texture/sampled/3d.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/3d.wgsl.expected.ir.msl
index 9a1e6cb..35e937b 100644
--- a/test/tint/types/texture/sampled/3d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/3d.wgsl.expected.ir.msl
@@ -1,9 +1,23 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::sample> t_f;
+ texture3d<int, access::sample> t_i;
+ texture3d<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture3d<float, access::sample> t_f [[texture(0)]], texture3d<int, access::sample> t_i [[texture(1)]], texture3d<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint const v_2 = tint_module_vars.t_f.get_height(v);
+ uint3 fdims = uint3(v_1, v_2, tint_module_vars.t_f.get_depth(v));
+ uint const v_3 = uint(1);
+ uint const v_4 = tint_module_vars.t_i.get_width(v_3);
+ uint const v_5 = tint_module_vars.t_i.get_height(v_3);
+ uint3 idims = uint3(v_4, v_5, tint_module_vars.t_i.get_depth(v_3));
+ uint const v_6 = uint(1);
+ uint const v_7 = tint_module_vars.t_u.get_width(v_6);
+ uint const v_8 = tint_module_vars.t_u.get_height(v_6);
+ uint3 udims = uint3(v_7, v_8, tint_module_vars.t_u.get_depth(v_6));
+}
diff --git a/test/tint/types/texture/sampled/cube.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/cube.wgsl.expected.ir.msl
index 9a1e6cb..dc4a6dc 100644
--- a/test/tint/types/texture/sampled/cube.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/cube.wgsl.expected.ir.msl
@@ -1,9 +1,20 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube<float, access::sample> t_f;
+ texturecube<int, access::sample> t_i;
+ texturecube<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texturecube<float, access::sample> t_f [[texture(0)]], texturecube<int, access::sample> t_i [[texture(1)]], texturecube<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 fdims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+ uint const v_2 = uint(1);
+ uint const v_3 = tint_module_vars.t_i.get_width(v_2);
+ uint2 idims = uint2(v_3, tint_module_vars.t_i.get_height(v_2));
+ uint const v_4 = uint(1);
+ uint const v_5 = tint_module_vars.t_u.get_width(v_4);
+ uint2 udims = uint2(v_5, tint_module_vars.t_u.get_height(v_4));
+}
diff --git a/test/tint/types/texture/sampled/cube_array.wgsl.expected.ir.msl b/test/tint/types/texture/sampled/cube_array.wgsl.expected.ir.msl
index 9a1e6cb..360817d 100644
--- a/test/tint/types/texture/sampled/cube_array.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/sampled/cube_array.wgsl.expected.ir.msl
@@ -1,9 +1,20 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texturecube_array<float, access::sample> t_f;
+ texturecube_array<int, access::sample> t_i;
+ texturecube_array<uint, access::sample> t_u;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texturecube_array<float, access::sample> t_f [[texture(0)]], texturecube_array<int, access::sample> t_i [[texture(1)]], texturecube_array<uint, access::sample> t_u [[texture(2)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_f=t_f, .t_i=t_i, .t_u=t_u};
+ uint const v = uint(1);
+ uint const v_1 = tint_module_vars.t_f.get_width(v);
+ uint2 fdims = uint2(v_1, tint_module_vars.t_f.get_height(v));
+ uint const v_2 = uint(1);
+ uint const v_3 = tint_module_vars.t_i.get_width(v_2);
+ uint2 idims = uint2(v_3, tint_module_vars.t_i.get_height(v_2));
+ uint const v_4 = uint(1);
+ uint const v_5 = tint_module_vars.t_u.get_width(v_4);
+ uint2 udims = uint2(v_5, tint_module_vars.t_u.get_height(v_4));
+}
diff --git a/test/tint/types/texture/storage/1d.wgsl.expected.ir.msl b/test/tint/types/texture/storage/1d.wgsl.expected.ir.msl
index 9a1e6cb..2465d8c 100644
--- a/test/tint/types/texture/storage/1d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/storage/1d.wgsl.expected.ir.msl
@@ -1,9 +1,40 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture1d<float, access::write> t_rgba8unorm;
+ texture1d<float, access::write> t_rgba8snorm;
+ texture1d<uint, access::write> t_rgba8uint;
+ texture1d<int, access::write> t_rgba8sint;
+ texture1d<uint, access::write> t_rgba16uint;
+ texture1d<int, access::write> t_rgba16sint;
+ texture1d<float, access::write> t_rgba16float;
+ texture1d<uint, access::write> t_r32uint;
+ texture1d<int, access::write> t_r32sint;
+ texture1d<float, access::write> t_r32float;
+ texture1d<uint, access::write> t_rg32uint;
+ texture1d<int, access::write> t_rg32sint;
+ texture1d<float, access::write> t_rg32float;
+ texture1d<uint, access::write> t_rgba32uint;
+ texture1d<int, access::write> t_rgba32sint;
+ texture1d<float, access::write> t_rgba32float;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture1d<float, access::write> t_rgba8unorm [[texture(0)]], texture1d<float, access::write> t_rgba8snorm [[texture(1)]], texture1d<uint, access::write> t_rgba8uint [[texture(2)]], texture1d<int, access::write> t_rgba8sint [[texture(3)]], texture1d<uint, access::write> t_rgba16uint [[texture(4)]], texture1d<int, access::write> t_rgba16sint [[texture(5)]], texture1d<float, access::write> t_rgba16float [[texture(6)]], texture1d<uint, access::write> t_r32uint [[texture(7)]], texture1d<int, access::write> t_r32sint [[texture(8)]], texture1d<float, access::write> t_r32float [[texture(9)]], texture1d<uint, access::write> t_rg32uint [[texture(10)]], texture1d<int, access::write> t_rg32sint [[texture(11)]], texture1d<float, access::write> t_rg32float [[texture(12)]], texture1d<uint, access::write> t_rgba32uint [[texture(13)]], texture1d<int, access::write> t_rgba32sint [[texture(14)]], texture1d<float, access::write> t_rgba32float [[texture(15)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_rgba8unorm=t_rgba8unorm, .t_rgba8snorm=t_rgba8snorm, .t_rgba8uint=t_rgba8uint, .t_rgba8sint=t_rgba8sint, .t_rgba16uint=t_rgba16uint, .t_rgba16sint=t_rgba16sint, .t_rgba16float=t_rgba16float, .t_r32uint=t_r32uint, .t_r32sint=t_r32sint, .t_r32float=t_r32float, .t_rg32uint=t_rg32uint, .t_rg32sint=t_rg32sint, .t_rg32float=t_rg32float, .t_rgba32uint=t_rgba32uint, .t_rgba32sint=t_rgba32sint, .t_rgba32float=t_rgba32float};
+ uint dim1 = uint(tint_module_vars.t_rgba8unorm.get_width());
+ uint dim2 = uint(tint_module_vars.t_rgba8snorm.get_width());
+ uint dim3 = uint(tint_module_vars.t_rgba8uint.get_width());
+ uint dim4 = uint(tint_module_vars.t_rgba8sint.get_width());
+ uint dim5 = uint(tint_module_vars.t_rgba16uint.get_width());
+ uint dim6 = uint(tint_module_vars.t_rgba16sint.get_width());
+ uint dim7 = uint(tint_module_vars.t_rgba16float.get_width());
+ uint dim8 = uint(tint_module_vars.t_r32uint.get_width());
+ uint dim9 = uint(tint_module_vars.t_r32sint.get_width());
+ uint dim10 = uint(tint_module_vars.t_r32float.get_width());
+ uint dim11 = uint(tint_module_vars.t_rg32uint.get_width());
+ uint dim12 = uint(tint_module_vars.t_rg32sint.get_width());
+ uint dim13 = uint(tint_module_vars.t_rg32float.get_width());
+ uint dim14 = uint(tint_module_vars.t_rgba32uint.get_width());
+ uint dim15 = uint(tint_module_vars.t_rgba32sint.get_width());
+ uint dim16 = uint(tint_module_vars.t_rgba32float.get_width());
+}
diff --git a/test/tint/types/texture/storage/2d.wgsl.expected.ir.msl b/test/tint/types/texture/storage/2d.wgsl.expected.ir.msl
index 9a1e6cb..0042c24 100644
--- a/test/tint/types/texture/storage/2d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/storage/2d.wgsl.expected.ir.msl
@@ -1,9 +1,56 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d<float, access::write> t_rgba8unorm;
+ texture2d<float, access::write> t_rgba8snorm;
+ texture2d<uint, access::write> t_rgba8uint;
+ texture2d<int, access::write> t_rgba8sint;
+ texture2d<uint, access::write> t_rgba16uint;
+ texture2d<int, access::write> t_rgba16sint;
+ texture2d<float, access::write> t_rgba16float;
+ texture2d<uint, access::write> t_r32uint;
+ texture2d<int, access::write> t_r32sint;
+ texture2d<float, access::write> t_r32float;
+ texture2d<uint, access::write> t_rg32uint;
+ texture2d<int, access::write> t_rg32sint;
+ texture2d<float, access::write> t_rg32float;
+ texture2d<uint, access::write> t_rgba32uint;
+ texture2d<int, access::write> t_rgba32sint;
+ texture2d<float, access::write> t_rgba32float;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture2d<float, access::write> t_rgba8unorm [[texture(0)]], texture2d<float, access::write> t_rgba8snorm [[texture(1)]], texture2d<uint, access::write> t_rgba8uint [[texture(2)]], texture2d<int, access::write> t_rgba8sint [[texture(3)]], texture2d<uint, access::write> t_rgba16uint [[texture(4)]], texture2d<int, access::write> t_rgba16sint [[texture(5)]], texture2d<float, access::write> t_rgba16float [[texture(6)]], texture2d<uint, access::write> t_r32uint [[texture(7)]], texture2d<int, access::write> t_r32sint [[texture(8)]], texture2d<float, access::write> t_r32float [[texture(9)]], texture2d<uint, access::write> t_rg32uint [[texture(10)]], texture2d<int, access::write> t_rg32sint [[texture(11)]], texture2d<float, access::write> t_rg32float [[texture(12)]], texture2d<uint, access::write> t_rgba32uint [[texture(13)]], texture2d<int, access::write> t_rgba32sint [[texture(14)]], texture2d<float, access::write> t_rgba32float [[texture(15)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_rgba8unorm=t_rgba8unorm, .t_rgba8snorm=t_rgba8snorm, .t_rgba8uint=t_rgba8uint, .t_rgba8sint=t_rgba8sint, .t_rgba16uint=t_rgba16uint, .t_rgba16sint=t_rgba16sint, .t_rgba16float=t_rgba16float, .t_r32uint=t_r32uint, .t_r32sint=t_r32sint, .t_r32float=t_r32float, .t_rg32uint=t_rg32uint, .t_rg32sint=t_rg32sint, .t_rg32float=t_rg32float, .t_rgba32uint=t_rgba32uint, .t_rgba32sint=t_rgba32sint, .t_rgba32float=t_rgba32float};
+ uint const v = tint_module_vars.t_rgba8unorm.get_width(0u);
+ uint2 dim1 = uint2(v, tint_module_vars.t_rgba8unorm.get_height(0u));
+ uint const v_1 = tint_module_vars.t_rgba8snorm.get_width(0u);
+ uint2 dim2 = uint2(v_1, tint_module_vars.t_rgba8snorm.get_height(0u));
+ uint const v_2 = tint_module_vars.t_rgba8uint.get_width(0u);
+ uint2 dim3 = uint2(v_2, tint_module_vars.t_rgba8uint.get_height(0u));
+ uint const v_3 = tint_module_vars.t_rgba8sint.get_width(0u);
+ uint2 dim4 = uint2(v_3, tint_module_vars.t_rgba8sint.get_height(0u));
+ uint const v_4 = tint_module_vars.t_rgba16uint.get_width(0u);
+ uint2 dim5 = uint2(v_4, tint_module_vars.t_rgba16uint.get_height(0u));
+ uint const v_5 = tint_module_vars.t_rgba16sint.get_width(0u);
+ uint2 dim6 = uint2(v_5, tint_module_vars.t_rgba16sint.get_height(0u));
+ uint const v_6 = tint_module_vars.t_rgba16float.get_width(0u);
+ uint2 dim7 = uint2(v_6, tint_module_vars.t_rgba16float.get_height(0u));
+ uint const v_7 = tint_module_vars.t_r32uint.get_width(0u);
+ uint2 dim8 = uint2(v_7, tint_module_vars.t_r32uint.get_height(0u));
+ uint const v_8 = tint_module_vars.t_r32sint.get_width(0u);
+ uint2 dim9 = uint2(v_8, tint_module_vars.t_r32sint.get_height(0u));
+ uint const v_9 = tint_module_vars.t_r32float.get_width(0u);
+ uint2 dim10 = uint2(v_9, tint_module_vars.t_r32float.get_height(0u));
+ uint const v_10 = tint_module_vars.t_rg32uint.get_width(0u);
+ uint2 dim11 = uint2(v_10, tint_module_vars.t_rg32uint.get_height(0u));
+ uint const v_11 = tint_module_vars.t_rg32sint.get_width(0u);
+ uint2 dim12 = uint2(v_11, tint_module_vars.t_rg32sint.get_height(0u));
+ uint const v_12 = tint_module_vars.t_rg32float.get_width(0u);
+ uint2 dim13 = uint2(v_12, tint_module_vars.t_rg32float.get_height(0u));
+ uint const v_13 = tint_module_vars.t_rgba32uint.get_width(0u);
+ uint2 dim14 = uint2(v_13, tint_module_vars.t_rgba32uint.get_height(0u));
+ uint const v_14 = tint_module_vars.t_rgba32sint.get_width(0u);
+ uint2 dim15 = uint2(v_14, tint_module_vars.t_rgba32sint.get_height(0u));
+ uint const v_15 = tint_module_vars.t_rgba32float.get_width(0u);
+ uint2 dim16 = uint2(v_15, tint_module_vars.t_rgba32float.get_height(0u));
+}
diff --git a/test/tint/types/texture/storage/2d_array.wgsl.expected.ir.msl b/test/tint/types/texture/storage/2d_array.wgsl.expected.ir.msl
index 9a1e6cb..24e3ccd 100644
--- a/test/tint/types/texture/storage/2d_array.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/storage/2d_array.wgsl.expected.ir.msl
@@ -1,9 +1,56 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture2d_array<float, access::write> t_rgba8unorm;
+ texture2d_array<float, access::write> t_rgba8snorm;
+ texture2d_array<uint, access::write> t_rgba8uint;
+ texture2d_array<int, access::write> t_rgba8sint;
+ texture2d_array<uint, access::write> t_rgba16uint;
+ texture2d_array<int, access::write> t_rgba16sint;
+ texture2d_array<float, access::write> t_rgba16float;
+ texture2d_array<uint, access::write> t_r32uint;
+ texture2d_array<int, access::write> t_r32sint;
+ texture2d_array<float, access::write> t_r32float;
+ texture2d_array<uint, access::write> t_rg32uint;
+ texture2d_array<int, access::write> t_rg32sint;
+ texture2d_array<float, access::write> t_rg32float;
+ texture2d_array<uint, access::write> t_rgba32uint;
+ texture2d_array<int, access::write> t_rgba32sint;
+ texture2d_array<float, access::write> t_rgba32float;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture2d_array<float, access::write> t_rgba8unorm [[texture(0)]], texture2d_array<float, access::write> t_rgba8snorm [[texture(1)]], texture2d_array<uint, access::write> t_rgba8uint [[texture(2)]], texture2d_array<int, access::write> t_rgba8sint [[texture(3)]], texture2d_array<uint, access::write> t_rgba16uint [[texture(4)]], texture2d_array<int, access::write> t_rgba16sint [[texture(5)]], texture2d_array<float, access::write> t_rgba16float [[texture(6)]], texture2d_array<uint, access::write> t_r32uint [[texture(7)]], texture2d_array<int, access::write> t_r32sint [[texture(8)]], texture2d_array<float, access::write> t_r32float [[texture(9)]], texture2d_array<uint, access::write> t_rg32uint [[texture(10)]], texture2d_array<int, access::write> t_rg32sint [[texture(11)]], texture2d_array<float, access::write> t_rg32float [[texture(12)]], texture2d_array<uint, access::write> t_rgba32uint [[texture(13)]], texture2d_array<int, access::write> t_rgba32sint [[texture(14)]], texture2d_array<float, access::write> t_rgba32float [[texture(15)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_rgba8unorm=t_rgba8unorm, .t_rgba8snorm=t_rgba8snorm, .t_rgba8uint=t_rgba8uint, .t_rgba8sint=t_rgba8sint, .t_rgba16uint=t_rgba16uint, .t_rgba16sint=t_rgba16sint, .t_rgba16float=t_rgba16float, .t_r32uint=t_r32uint, .t_r32sint=t_r32sint, .t_r32float=t_r32float, .t_rg32uint=t_rg32uint, .t_rg32sint=t_rg32sint, .t_rg32float=t_rg32float, .t_rgba32uint=t_rgba32uint, .t_rgba32sint=t_rgba32sint, .t_rgba32float=t_rgba32float};
+ uint const v = tint_module_vars.t_rgba8unorm.get_width(0u);
+ uint2 dim1 = uint2(v, tint_module_vars.t_rgba8unorm.get_height(0u));
+ uint const v_1 = tint_module_vars.t_rgba8snorm.get_width(0u);
+ uint2 dim2 = uint2(v_1, tint_module_vars.t_rgba8snorm.get_height(0u));
+ uint const v_2 = tint_module_vars.t_rgba8uint.get_width(0u);
+ uint2 dim3 = uint2(v_2, tint_module_vars.t_rgba8uint.get_height(0u));
+ uint const v_3 = tint_module_vars.t_rgba8sint.get_width(0u);
+ uint2 dim4 = uint2(v_3, tint_module_vars.t_rgba8sint.get_height(0u));
+ uint const v_4 = tint_module_vars.t_rgba16uint.get_width(0u);
+ uint2 dim5 = uint2(v_4, tint_module_vars.t_rgba16uint.get_height(0u));
+ uint const v_5 = tint_module_vars.t_rgba16sint.get_width(0u);
+ uint2 dim6 = uint2(v_5, tint_module_vars.t_rgba16sint.get_height(0u));
+ uint const v_6 = tint_module_vars.t_rgba16float.get_width(0u);
+ uint2 dim7 = uint2(v_6, tint_module_vars.t_rgba16float.get_height(0u));
+ uint const v_7 = tint_module_vars.t_r32uint.get_width(0u);
+ uint2 dim8 = uint2(v_7, tint_module_vars.t_r32uint.get_height(0u));
+ uint const v_8 = tint_module_vars.t_r32sint.get_width(0u);
+ uint2 dim9 = uint2(v_8, tint_module_vars.t_r32sint.get_height(0u));
+ uint const v_9 = tint_module_vars.t_r32float.get_width(0u);
+ uint2 dim10 = uint2(v_9, tint_module_vars.t_r32float.get_height(0u));
+ uint const v_10 = tint_module_vars.t_rg32uint.get_width(0u);
+ uint2 dim11 = uint2(v_10, tint_module_vars.t_rg32uint.get_height(0u));
+ uint const v_11 = tint_module_vars.t_rg32sint.get_width(0u);
+ uint2 dim12 = uint2(v_11, tint_module_vars.t_rg32sint.get_height(0u));
+ uint const v_12 = tint_module_vars.t_rg32float.get_width(0u);
+ uint2 dim13 = uint2(v_12, tint_module_vars.t_rg32float.get_height(0u));
+ uint const v_13 = tint_module_vars.t_rgba32uint.get_width(0u);
+ uint2 dim14 = uint2(v_13, tint_module_vars.t_rgba32uint.get_height(0u));
+ uint const v_14 = tint_module_vars.t_rgba32sint.get_width(0u);
+ uint2 dim15 = uint2(v_14, tint_module_vars.t_rgba32sint.get_height(0u));
+ uint const v_15 = tint_module_vars.t_rgba32float.get_width(0u);
+ uint2 dim16 = uint2(v_15, tint_module_vars.t_rgba32float.get_height(0u));
+}
diff --git a/test/tint/types/texture/storage/3d.wgsl.expected.ir.msl b/test/tint/types/texture/storage/3d.wgsl.expected.ir.msl
index 9a1e6cb..22c74f1 100644
--- a/test/tint/types/texture/storage/3d.wgsl.expected.ir.msl
+++ b/test/tint/types/texture/storage/3d.wgsl.expected.ir.msl
@@ -1,9 +1,72 @@
-SKIP: FAILED
+#include <metal_stdlib>
+using namespace metal;
+struct tint_module_vars_struct {
+ texture3d<float, access::write> t_rgba8unorm;
+ texture3d<float, access::write> t_rgba8snorm;
+ texture3d<uint, access::write> t_rgba8uint;
+ texture3d<int, access::write> t_rgba8sint;
+ texture3d<uint, access::write> t_rgba16uint;
+ texture3d<int, access::write> t_rgba16sint;
+ texture3d<float, access::write> t_rgba16float;
+ texture3d<uint, access::write> t_r32uint;
+ texture3d<int, access::write> t_r32sint;
+ texture3d<float, access::write> t_r32float;
+ texture3d<uint, access::write> t_rg32uint;
+ texture3d<int, access::write> t_rg32sint;
+ texture3d<float, access::write> t_rg32float;
+ texture3d<uint, access::write> t_rgba32uint;
+ texture3d<int, access::write> t_rgba32sint;
+ texture3d<float, access::write> t_rgba32float;
+};
-../../src/tint/lang/msl/writer/printer/printer.cc:924 internal compiler error: TINT_UNREACHABLE unhandled: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************
+kernel void tint_symbol(texture3d<float, access::write> t_rgba8unorm [[texture(0)]], texture3d<float, access::write> t_rgba8snorm [[texture(1)]], texture3d<uint, access::write> t_rgba8uint [[texture(2)]], texture3d<int, access::write> t_rgba8sint [[texture(3)]], texture3d<uint, access::write> t_rgba16uint [[texture(4)]], texture3d<int, access::write> t_rgba16sint [[texture(5)]], texture3d<float, access::write> t_rgba16float [[texture(6)]], texture3d<uint, access::write> t_r32uint [[texture(7)]], texture3d<int, access::write> t_r32sint [[texture(8)]], texture3d<float, access::write> t_r32float [[texture(9)]], texture3d<uint, access::write> t_rg32uint [[texture(10)]], texture3d<int, access::write> t_rg32sint [[texture(11)]], texture3d<float, access::write> t_rg32float [[texture(12)]], texture3d<uint, access::write> t_rgba32uint [[texture(13)]], texture3d<int, access::write> t_rgba32sint [[texture(14)]], texture3d<float, access::write> t_rgba32float [[texture(15)]]) {
+ tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.t_rgba8unorm=t_rgba8unorm, .t_rgba8snorm=t_rgba8snorm, .t_rgba8uint=t_rgba8uint, .t_rgba8sint=t_rgba8sint, .t_rgba16uint=t_rgba16uint, .t_rgba16sint=t_rgba16sint, .t_rgba16float=t_rgba16float, .t_r32uint=t_r32uint, .t_r32sint=t_r32sint, .t_r32float=t_r32float, .t_rg32uint=t_rg32uint, .t_rg32sint=t_rg32sint, .t_rg32float=t_rg32float, .t_rgba32uint=t_rgba32uint, .t_rgba32sint=t_rgba32sint, .t_rgba32float=t_rgba32float};
+ uint const v = tint_module_vars.t_rgba8unorm.get_width(0u);
+ uint const v_1 = tint_module_vars.t_rgba8unorm.get_height(0u);
+ uint3 dim1 = uint3(v, v_1, tint_module_vars.t_rgba8unorm.get_depth(0u));
+ uint const v_2 = tint_module_vars.t_rgba8snorm.get_width(0u);
+ uint const v_3 = tint_module_vars.t_rgba8snorm.get_height(0u);
+ uint3 dim2 = uint3(v_2, v_3, tint_module_vars.t_rgba8snorm.get_depth(0u));
+ uint const v_4 = tint_module_vars.t_rgba8uint.get_width(0u);
+ uint const v_5 = tint_module_vars.t_rgba8uint.get_height(0u);
+ uint3 dim3 = uint3(v_4, v_5, tint_module_vars.t_rgba8uint.get_depth(0u));
+ uint const v_6 = tint_module_vars.t_rgba8sint.get_width(0u);
+ uint const v_7 = tint_module_vars.t_rgba8sint.get_height(0u);
+ uint3 dim4 = uint3(v_6, v_7, tint_module_vars.t_rgba8sint.get_depth(0u));
+ uint const v_8 = tint_module_vars.t_rgba16uint.get_width(0u);
+ uint const v_9 = tint_module_vars.t_rgba16uint.get_height(0u);
+ uint3 dim5 = uint3(v_8, v_9, tint_module_vars.t_rgba16uint.get_depth(0u));
+ uint const v_10 = tint_module_vars.t_rgba16sint.get_width(0u);
+ uint const v_11 = tint_module_vars.t_rgba16sint.get_height(0u);
+ uint3 dim6 = uint3(v_10, v_11, tint_module_vars.t_rgba16sint.get_depth(0u));
+ uint const v_12 = tint_module_vars.t_rgba16float.get_width(0u);
+ uint const v_13 = tint_module_vars.t_rgba16float.get_height(0u);
+ uint3 dim7 = uint3(v_12, v_13, tint_module_vars.t_rgba16float.get_depth(0u));
+ uint const v_14 = tint_module_vars.t_r32uint.get_width(0u);
+ uint const v_15 = tint_module_vars.t_r32uint.get_height(0u);
+ uint3 dim8 = uint3(v_14, v_15, tint_module_vars.t_r32uint.get_depth(0u));
+ uint const v_16 = tint_module_vars.t_r32sint.get_width(0u);
+ uint const v_17 = tint_module_vars.t_r32sint.get_height(0u);
+ uint3 dim9 = uint3(v_16, v_17, tint_module_vars.t_r32sint.get_depth(0u));
+ uint const v_18 = tint_module_vars.t_r32float.get_width(0u);
+ uint const v_19 = tint_module_vars.t_r32float.get_height(0u);
+ uint3 dim10 = uint3(v_18, v_19, tint_module_vars.t_r32float.get_depth(0u));
+ uint const v_20 = tint_module_vars.t_rg32uint.get_width(0u);
+ uint const v_21 = tint_module_vars.t_rg32uint.get_height(0u);
+ uint3 dim11 = uint3(v_20, v_21, tint_module_vars.t_rg32uint.get_depth(0u));
+ uint const v_22 = tint_module_vars.t_rg32sint.get_width(0u);
+ uint const v_23 = tint_module_vars.t_rg32sint.get_height(0u);
+ uint3 dim12 = uint3(v_22, v_23, tint_module_vars.t_rg32sint.get_depth(0u));
+ uint const v_24 = tint_module_vars.t_rg32float.get_width(0u);
+ uint const v_25 = tint_module_vars.t_rg32float.get_height(0u);
+ uint3 dim13 = uint3(v_24, v_25, tint_module_vars.t_rg32float.get_depth(0u));
+ uint const v_26 = tint_module_vars.t_rgba32uint.get_width(0u);
+ uint const v_27 = tint_module_vars.t_rgba32uint.get_height(0u);
+ uint3 dim14 = uint3(v_26, v_27, tint_module_vars.t_rgba32uint.get_depth(0u));
+ uint const v_28 = tint_module_vars.t_rgba32sint.get_width(0u);
+ uint const v_29 = tint_module_vars.t_rgba32sint.get_height(0u);
+ uint3 dim15 = uint3(v_28, v_29, tint_module_vars.t_rgba32sint.get_depth(0u));
+ uint const v_30 = tint_module_vars.t_rgba32float.get_width(0u);
+ uint const v_31 = tint_module_vars.t_rgba32float.get_height(0u);
+ uint3 dim16 = uint3(v_30, v_31, tint_module_vars.t_rgba32float.get_depth(0u));
+}
diff --git a/test/tint/unittest/reader/spirv/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_Variable_3.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_Variable_3.spvasm.expected.ir.msl
deleted file mode 100644
index 9a1e6cb..0000000
--- a/test/tint/unittest/reader/spirv/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_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: textureDimensions
-********************************************************************
-* 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/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_Variable_4.spvasm.expected.ir.msl b/test/tint/unittest/reader/spirv/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_Variable_4.spvasm.expected.ir.msl
deleted file mode 100644
index 9a1e6cb..0000000
--- a/test/tint/unittest/reader/spirv/Samples_SpvParserHandleTest_RegisterHandleUsage_RawImage_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: textureDimensions
-********************************************************************
-* 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. *
-********************************************************************