Always use 0 for the Depth operand of OpTypeImage

This CL is based on the below one with changes on the unittests:
https://dawn-review.googlesource.com/c/tint/+/60860

Bug: dawn:1030
Test: tint_unittests

Change-Id: I4624a0abd3c4905137b6ce1b3f57e4d9a4510eb4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/85324
Reviewed-by: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86065
Commit-Queue: Ben Clayton <bclayton@google.com>
diff --git a/docs/tint/translations.md b/docs/tint/translations.md
index 5119434..19bf2fa 100644
--- a/docs/tint/translations.md
+++ b/docs/tint/translations.md
@@ -118,11 +118,11 @@
 | | | |
 | texture_multisampled_2d&lt;type&gt; | OpTypeImage 2D MS=1 Sampled=1 | texture2d_ms&lt;type, access::sample&gt; | Texture2D |
 | | | |
-| texture_depth_2d | OpTypeImage 2D Depth=1 Sampled=1 | depth2d&lt;float, access::sample&gt;| Texture2D |
-| texture_depth_2d_array | OpTypeImage 2D Depth=1 Arrayed=1 Sampled=1 | depth2d_array&lt;float, access::sample&gt; | Texture2DArray |
-| texture_depth_cube | OpTypeImage Cube Depth=1 Sampled=1 | depthcube&lt;float, access::sample&gt; | TextureCube |
-| texture_depth_cube_array | OpTypeImage Cube Depth=1 Arrayed=1 Sampled=1 | depthcube_array&lt;float, access::sample&gt; | TextureCubeArray |
-| texture_depth_multisampled_2d | OpTypeImage 2D Depth=1 MS=1 Sampled=1 | depth2d&lt;float, access::sample&gt;| Texture2DMSArray |
+| texture_depth_2d | OpTypeImage 2D Sampled=1 | depth2d&lt;float, access::sample&gt;| Texture2D |
+| texture_depth_2d_array | OpTypeImage 2D Arrayed=1 Sampled=1 | depth2d_array&lt;float, access::sample&gt; | Texture2DArray |
+| texture_depth_cube | OpTypeImage Cube Sampled=1 | depthcube&lt;float, access::sample&gt; | TextureCube |
+| texture_depth_cube_array | OpTypeImage Cube Arrayed=1 Sampled=1 | depthcube_array&lt;float, access::sample&gt; | TextureCubeArray |
+| texture_depth_multisampled_2d | OpTypeImage 2D MS=1 Sampled=1 | depth2d&lt;float, access::sample&gt;| Texture2DMSArray |
 | | | |
 | texture_storage_1d&lt;image_storage_type&gt; | OpTypeImage 1D Sampled=2| texture1d&lt;type, access::read&gt; | RWTexture1D |
 | texture_storage_2d&lt;image_storage_type&gt; | OpTypeImage 2D Sampled=2 | texture2d&lt;type, access::read&gt; | RWTexture2D |
diff --git a/src/dawn/tests/end2end/MultisampledSamplingTests.cpp b/src/dawn/tests/end2end/MultisampledSamplingTests.cpp
index 25ede94..b2fda5e 100644
--- a/src/dawn/tests/end2end/MultisampledSamplingTests.cpp
+++ b/src/dawn/tests/end2end/MultisampledSamplingTests.cpp
@@ -50,9 +50,6 @@
     void SetUp() override {
         DawnTest::SetUp();
 
-        // TODO(crbug.com/dawn/1030): Compute pipeline compilation crashes.
-        DAWN_SUPPRESS_TEST_IF(IsLinux() && IsVulkan() && IsIntel());
-
         {
             utils::ComboRenderPipelineDescriptor desc;
 
diff --git a/src/tint/writer/spirv/builder.cc b/src/tint/writer/spirv/builder.cc
index 30a5f41..97d2d7d 100644
--- a/src/tint/writer/spirv/builder.cc
+++ b/src/tint/writer/spirv/builder.cc
@@ -3352,6 +3352,15 @@
 uint32_t Builder::GenerateSampledImage(const sem::Type* texture_type,
                                        Operand texture_operand,
                                        Operand sampler_operand) {
+  // DepthTexture is always declared as SampledTexture.
+  // The Vulkan spec says: The "Depth" operand of OpTypeImage is ignored.
+  // In SPIRV, 0 means not depth, 1 means depth, and 2 means unknown.
+  // Using anything other than 0 is problematic on various Vulkan drivers.
+  if (auto* depthTextureType = texture_type->As<sem::DepthTexture>()) {
+    texture_type = builder_.create<sem::SampledTexture>(
+        depthTextureType->dim(), builder_.create<sem::F32>());
+  }
+
   uint32_t sampled_image_type_id = utils::GetOrCreate(
       texture_type_to_sampled_image_type_id_, texture_type, [&] {
         // We need to create the sampled image type and cache the result.
@@ -3810,6 +3819,19 @@
     return GenerateTypeIfNeeded(atomic->Type());
   }
 
+  // DepthTexture is always declared as SampledTexture.
+  // The Vulkan spec says: The "Depth" operand of OpTypeImage is ignored.
+  // In SPIRV, 0 means not depth, 1 means depth, and 2 means unknown.
+  // Using anything other than 0 is problematic on various Vulkan drivers.
+  if (auto* depthTextureType = type->As<sem::DepthTexture>()) {
+    type = builder_.create<sem::SampledTexture>(depthTextureType->dim(),
+                                                builder_.create<sem::F32>());
+  } else if (auto* multisampledDepthTextureType =
+                 type->As<sem::DepthMultisampledTexture>()) {
+    type = builder_.create<sem::MultisampledTexture>(
+        multisampledDepthTextureType->dim(), builder_.create<sem::F32>());
+  }
+
   // Pointers and references with differing accesses should not result in a
   // different SPIR-V types, so we explicitly ignore the access.
   // Pointers and References both map to a SPIR-V pointer type.
@@ -3959,9 +3981,9 @@
   }
 
   uint32_t depth_literal = 0u;
-  if (texture->IsAnyOf<sem::DepthTexture, sem::DepthMultisampledTexture>()) {
-    depth_literal = 1u;
-  }
+  // The Vulkan spec says: The "Depth" operand of OpTypeImage is ignored.
+  // In SPIRV, 0 means not depth, 1 means depth, and 2 means unknown.
+  // Using anything other than 0 is problematic on various Vulkan drivers.
 
   uint32_t sampled_literal = 2u;
   if (texture->IsAnyOf<sem::MultisampledTexture, sem::SampledTexture,
diff --git a/src/tint/writer/spirv/builder_builtin_test.cc b/src/tint/writer/spirv/builder_builtin_test.cc
index 0e6ab27..aec6fdf 100644
--- a/src/tint/writer/spirv/builder_builtin_test.cc
+++ b/src/tint/writer/spirv/builder_builtin_test.cc
@@ -485,7 +485,7 @@
   EXPECT_EQ(b.GenerateExpression(expr2), 17u) << b.error();
 
   EXPECT_EQ(DumpInstructions(b.types()), R"(%4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
diff --git a/src/tint/writer/spirv/builder_builtin_texture_test.cc b/src/tint/writer/spirv/builder_builtin_texture_test.cc
index 00f8e76..9a2269d 100644
--- a/src/tint/writer/spirv/builder_builtin_texture_test.cc
+++ b/src/tint/writer/spirv/builder_builtin_texture_test.cc
@@ -297,7 +297,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -318,7 +318,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -339,7 +339,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -362,7 +362,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -385,7 +385,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -406,7 +406,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -427,7 +427,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -451,7 +451,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -475,7 +475,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 1 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 1 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -748,7 +748,7 @@
     case ValidTextureOverload::kGatherDepth2dF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -774,7 +774,7 @@
     case ValidTextureOverload::kGatherDepth2dOffsetF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -804,7 +804,7 @@
     case ValidTextureOverload::kGatherDepth2dArrayF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -832,7 +832,7 @@
     case ValidTextureOverload::kGatherDepth2dArrayOffsetF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -864,7 +864,7 @@
     case ValidTextureOverload::kGatherDepthCubeF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -891,7 +891,7 @@
     case ValidTextureOverload::kGatherDepthCubeArrayF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -920,7 +920,7 @@
     case ValidTextureOverload::kGatherCompareDepth2dF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -945,7 +945,7 @@
     case ValidTextureOverload::kGatherCompareDepth2dOffsetF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -975,7 +975,7 @@
     case ValidTextureOverload::kGatherCompareDepth2dArrayF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1003,7 +1003,7 @@
     case ValidTextureOverload::kGatherCompareDepth2dArrayOffsetF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1035,7 +1035,7 @@
     case ValidTextureOverload::kGatherCompareDepthCubeF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1061,7 +1061,7 @@
     case ValidTextureOverload::kGatherCompareDepthCubeArrayF32:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1133,7 +1133,7 @@
     case ValidTextureOverload::kNumLayersDepth2dArray:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1154,7 +1154,7 @@
     case ValidTextureOverload::kNumLayersDepthCubeArray:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1287,7 +1287,7 @@
     case ValidTextureOverload::kNumLevelsDepth2d:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1305,7 +1305,7 @@
     case ValidTextureOverload::kNumLevelsDepth2dArray:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1323,7 +1323,7 @@
     case ValidTextureOverload::kNumLevelsDepthCube:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1341,7 +1341,7 @@
     case ValidTextureOverload::kNumLevelsDepthCubeArray:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1378,7 +1378,7 @@
     case ValidTextureOverload::kNumSamplesDepthMultisampled2d:
       return {R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 1 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 1 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1648,7 +1648,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1674,7 +1674,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1705,7 +1705,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1734,7 +1734,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1767,7 +1767,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -1794,7 +1794,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2296,7 +2296,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2325,7 +2325,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2358,7 +2358,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2389,7 +2389,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2424,7 +2424,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2454,7 +2454,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2772,7 +2772,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2797,7 +2797,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2827,7 +2827,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2855,7 +2855,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2887,7 +2887,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2913,7 +2913,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2943,7 +2943,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -2969,7 +2969,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3000,7 +3000,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3029,7 +3029,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3062,7 +3062,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 0 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3089,7 +3089,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 Cube 1 1 0 1 Unknown
+%3 = OpTypeImage %4 Cube 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3475,7 +3475,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 0 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 0 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3500,7 +3500,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
@@ -3526,7 +3526,7 @@
       return {
           R"(
 %4 = OpTypeFloat 32
-%3 = OpTypeImage %4 2D 1 1 0 1 Unknown
+%3 = OpTypeImage %4 2D 0 1 0 1 Unknown
 %2 = OpTypePointer UniformConstant %3
 %1 = OpVariable %2 UniformConstant
 %7 = OpTypeSampler
diff --git a/src/tint/writer/spirv/builder_type_test.cc b/src/tint/writer/spirv/builder_type_test.cc
index 8ab7b9d..44e778b 100644
--- a/src/tint/writer/spirv/builder_type_test.cc
+++ b/src/tint/writer/spirv/builder_type_test.cc
@@ -561,7 +561,7 @@
   EXPECT_EQ(1u, id_two_d);
 
   EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
-%1 = OpTypeImage %2 2D 1 0 0 1 Unknown
+%1 = OpTypeImage %2 2D 0 0 0 1 Unknown
 )");
 }
 
@@ -576,7 +576,7 @@
   EXPECT_EQ(1u, id_two_d_array);
 
   EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
-%1 = OpTypeImage %2 2D 1 1 0 1 Unknown
+%1 = OpTypeImage %2 2D 0 1 0 1 Unknown
 )");
 }
 
@@ -590,7 +590,7 @@
   EXPECT_EQ(1u, id_cube);
 
   EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
-%1 = OpTypeImage %2 Cube 1 0 0 1 Unknown
+%1 = OpTypeImage %2 Cube 0 0 0 1 Unknown
 )");
   EXPECT_EQ(DumpInstructions(b.capabilities()), "");
 }
@@ -606,7 +606,7 @@
   EXPECT_EQ(1u, id_cube_array);
 
   EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
-%1 = OpTypeImage %2 Cube 1 1 0 1 Unknown
+%1 = OpTypeImage %2 Cube 0 1 0 1 Unknown
 )");
   EXPECT_EQ(DumpInstructions(b.capabilities()),
             R"(OpCapability SampledCubeArray
diff --git a/test/tint/bug/tint/827.wgsl.expected.spvasm b/test/tint/bug/tint/827.wgsl.expected.spvasm
index d2f383b1..b1fda45 100644
--- a/test/tint/bug/tint/827.wgsl.expected.spvasm
+++ b/test/tint/bug/tint/827.wgsl.expected.spvasm
@@ -30,7 +30,7 @@
 %GlobalInvocationId_1 = OpVariable %_ptr_Input_v3uint Input
       %width = OpConstant %uint 128
       %float = OpTypeFloat 32
-          %8 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %8 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
         %tex = OpVariable %_ptr_UniformConstant_8 UniformConstant
 %_runtimearr_float = OpTypeRuntimeArray %float
diff --git a/test/tint/bug/tint/959.wgsl.expected.spvasm b/test/tint/bug/tint/959.wgsl.expected.spvasm
index d629631..a6f6c35 100644
--- a/test/tint/bug/tint/959.wgsl.expected.spvasm
+++ b/test/tint/bug/tint/959.wgsl.expected.spvasm
@@ -1,7 +1,7 @@
 ; SPIR-V
 ; Version: 1.3
 ; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
 ; Schema: 0
                OpCapability Shader
                OpMemoryModel Logical GLSL450
@@ -202,38 +202,37 @@
          %t5 = OpVariable %_ptr_UniformConstant_23 UniformConstant
          %t6 = OpVariable %_ptr_UniformConstant_23 UniformConstant
          %t7 = OpVariable %_ptr_UniformConstant_23 UniformConstant
-         %33 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_33 = OpTypePointer UniformConstant %33
-         %t8 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-         %t9 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t10 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t11 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t12 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t13 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t14 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-        %t15 = OpVariable %_ptr_UniformConstant_33 UniformConstant
-         %43 = OpTypeSampler
-%_ptr_UniformConstant_43 = OpTypePointer UniformConstant %43
-         %s0 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s1 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s2 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s3 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s4 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s5 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s6 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-         %s7 = OpVariable %_ptr_UniformConstant_43 UniformConstant
-%_ptr_UniformConstant_43_0 = OpTypePointer UniformConstant %43
-         %s8 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-         %s9 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s10 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s11 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s12 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s13 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s14 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
-        %s15 = OpVariable %_ptr_UniformConstant_43_0 UniformConstant
+%_ptr_UniformConstant_23_0 = OpTypePointer UniformConstant %23
+         %t8 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+         %t9 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t10 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t11 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t12 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t13 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t14 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+        %t15 = OpVariable %_ptr_UniformConstant_23_0 UniformConstant
+         %42 = OpTypeSampler
+%_ptr_UniformConstant_42 = OpTypePointer UniformConstant %42
+         %s0 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s1 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s2 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s3 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s4 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s5 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s6 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+         %s7 = OpVariable %_ptr_UniformConstant_42 UniformConstant
+%_ptr_UniformConstant_42_0 = OpTypePointer UniformConstant %42
+         %s8 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+         %s9 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s10 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s11 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s12 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s13 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s14 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
+        %s15 = OpVariable %_ptr_UniformConstant_42_0 UniformConstant
        %void = OpTypeVoid
-         %60 = OpTypeFunction %void
-       %main = OpFunction %void None %60
-         %63 = OpLabel
+         %59 = OpTypeFunction %void
+       %main = OpFunction %void None %59
+         %62 = OpLabel
                OpReturn
                OpFunctionEnd
diff --git a/test/tint/bug/tint/978.wgsl.expected.spvasm b/test/tint/bug/tint/978.wgsl.expected.spvasm
index e1da002f..865f8b0 100644
--- a/test/tint/bug/tint/978.wgsl.expected.spvasm
+++ b/test/tint/bug/tint/978.wgsl.expected.spvasm
@@ -35,7 +35,7 @@
 %_ptr_Output_v4float = OpTypePointer Output %v4float
           %8 = OpConstantNull %v4float
     %color_1 = OpVariable %_ptr_Output_v4float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
    %depthMap = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureDimensions/12c9bb.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
index 85a2e2e..82f66a7 100644
--- a/test/tint/builtins/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/57e28f.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/57e28f.wgsl.expected.spvasm
index c1e6948..9dd34bf 100644
--- a/test/tint/builtins/gen/textureDimensions/57e28f.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/57e28f.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/72e5d6.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
index b645a15..7d2a40c 100644
--- a/test/tint/builtins/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/7bf826.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/7bf826.wgsl.expected.spvasm
index c6fc9b8..2229e18 100644
--- a/test/tint/builtins/gen/textureDimensions/7bf826.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/7bf826.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/90340b.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/90340b.wgsl.expected.spvasm
index 2e0527a..5d4d7e7 100644
--- a/test/tint/builtins/gen/textureDimensions/90340b.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/90340b.wgsl.expected.spvasm
@@ -33,7 +33,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/9393b0.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/9393b0.wgsl.expected.spvasm
index d87c269..4ce2ce1 100644
--- a/test/tint/builtins/gen/textureDimensions/9393b0.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/9393b0.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/939fdb.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/939fdb.wgsl.expected.spvasm
index facc7e6..7e41c36 100644
--- a/test/tint/builtins/gen/textureDimensions/939fdb.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/939fdb.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/a01845.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/a01845.wgsl.expected.spvasm
index 03a54f6..1cf408f 100644
--- a/test/tint/builtins/gen/textureDimensions/a01845.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/a01845.wgsl.expected.spvasm
@@ -33,7 +33,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureDimensions/f60bdb.wgsl.expected.spvasm b/test/tint/builtins/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
index ad4b6aa..e43fe0b 100644
--- a/test/tint/builtins/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureGather/10c554.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/10c554.wgsl.expected.spvasm
index dfa4d4a..44cf7b1 100644
--- a/test/tint/builtins/gen/textureGather/10c554.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/10c554.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGather/2e0ed5.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/2e0ed5.wgsl.expected.spvasm
index 8dd47c9..0170582 100644
--- a/test/tint/builtins/gen/textureGather/2e0ed5.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/2e0ed5.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGather/43025d.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/43025d.wgsl.expected.spvasm
index 809074b..a8ef14e 100644
--- a/test/tint/builtins/gen/textureGather/43025d.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/43025d.wgsl.expected.spvasm
@@ -35,7 +35,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGather/53ece6.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/53ece6.wgsl.expected.spvasm
index d46484e..ab53c1f 100644
--- a/test/tint/builtins/gen/textureGather/53ece6.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/53ece6.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGather/9a6358.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/9a6358.wgsl.expected.spvasm
index f379361..138fef1 100644
--- a/test/tint/builtins/gen/textureGather/9a6358.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/9a6358.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGather/c409ae.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGather/c409ae.wgsl.expected.spvasm
index 3ff9b74..d5f4ba6 100644
--- a/test/tint/builtins/gen/textureGather/c409ae.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGather/c409ae.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/182fd4.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/182fd4.wgsl.expected.spvasm
index 6137b2b..f24d780 100644
--- a/test/tint/builtins/gen/textureGatherCompare/182fd4.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/182fd4.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/60d2d1.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/60d2d1.wgsl.expected.spvasm
index c6fd071..e5f9745 100644
--- a/test/tint/builtins/gen/textureGatherCompare/60d2d1.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/60d2d1.wgsl.expected.spvasm
@@ -35,7 +35,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/6d9352.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/6d9352.wgsl.expected.spvasm
index 5a86729..355943f 100644
--- a/test/tint/builtins/gen/textureGatherCompare/6d9352.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/6d9352.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/6f1267.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/6f1267.wgsl.expected.spvasm
index 33dbf28..af1a777 100644
--- a/test/tint/builtins/gen/textureGatherCompare/6f1267.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/6f1267.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/783e65.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/783e65.wgsl.expected.spvasm
index 4872ee5..6ae28fa 100644
--- a/test/tint/builtins/gen/textureGatherCompare/783e65.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/783e65.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureGatherCompare/a5f587.wgsl.expected.spvasm b/test/tint/builtins/gen/textureGatherCompare/a5f587.wgsl.expected.spvasm
index 2d6e7f2..1cace3a 100644
--- a/test/tint/builtins/gen/textureGatherCompare/a5f587.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureGatherCompare/a5f587.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureLoad/19cf87.wgsl.expected.spvasm b/test/tint/builtins/gen/textureLoad/19cf87.wgsl.expected.spvasm
index 5a0ea57..eca642d 100644
--- a/test/tint/builtins/gen/textureLoad/19cf87.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureLoad/19cf87.wgsl.expected.spvasm
@@ -31,7 +31,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureLoad/6273b1.wgsl.expected.spvasm b/test/tint/builtins/gen/textureLoad/6273b1.wgsl.expected.spvasm
index 2f1ffc5..5db1880 100644
--- a/test/tint/builtins/gen/textureLoad/6273b1.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureLoad/6273b1.wgsl.expected.spvasm
@@ -31,7 +31,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureLoad/9b2667.wgsl.expected.spvasm b/test/tint/builtins/gen/textureLoad/9b2667.wgsl.expected.spvasm
index 76e06b1..891f9a4 100644
--- a/test/tint/builtins/gen/textureLoad/9b2667.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureLoad/9b2667.wgsl.expected.spvasm
@@ -31,7 +31,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLayers/778bd1.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
index e34b642..b1fd36b 100644
--- a/test/tint/builtins/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
@@ -33,7 +33,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLayers/e653c0.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
index 8fb0180..52ed923 100644
--- a/test/tint/builtins/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLevels/076cb5.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
index ad5ab93..7b36c19 100644
--- a/test/tint/builtins/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLevels/2c3575.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
index 9f84c3c..ef03d8a 100644
--- a/test/tint/builtins/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
@@ -33,7 +33,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
index def7aeb..dcd4a66 100644
--- a/test/tint/builtins/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumLevels/f5828d.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
index 50e30a2..6af2f4a 100644
--- a/test/tint/builtins/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm b/test/tint/builtins/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
index 5800475..a6f64b1 100644
--- a/test/tint/builtins/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
@@ -32,7 +32,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/builtins/gen/textureSample/38bbb9.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/38bbb9.wgsl.expected.spvasm
index 965b178..788cf86 100644
--- a/test/tint/builtins/gen/textureSample/38bbb9.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/38bbb9.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSample/667d76.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/667d76.wgsl.expected.spvasm
index f813d47..51d8c51 100644
--- a/test/tint/builtins/gen/textureSample/667d76.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/667d76.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSample/7e9ffd.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/7e9ffd.wgsl.expected.spvasm
index 86f050b..313d27d 100644
--- a/test/tint/builtins/gen/textureSample/7e9ffd.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/7e9ffd.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 1 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSample/8522e7.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/8522e7.wgsl.expected.spvasm
index ff3e80c..4a1400c 100644
--- a/test/tint/builtins/gen/textureSample/8522e7.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/8522e7.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 1 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSample/c2f4e8.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/c2f4e8.wgsl.expected.spvasm
index 6733792..8c5f546 100644
--- a/test/tint/builtins/gen/textureSample/c2f4e8.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/c2f4e8.wgsl.expected.spvasm
@@ -18,7 +18,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 1 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSample/ea7030.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSample/ea7030.wgsl.expected.spvasm
index 6109222..d3c3a4e 100644
--- a/test/tint/builtins/gen/textureSample/ea7030.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSample/ea7030.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 0 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/25fcd1.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/25fcd1.wgsl.expected.spvasm
index e8ed7e0..9fff619 100644
--- a/test/tint/builtins/gen/textureSampleCompare/25fcd1.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/25fcd1.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/3a5923.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/3a5923.wgsl.expected.spvasm
index 6f738a3..a3d0519 100644
--- a/test/tint/builtins/gen/textureSampleCompare/3a5923.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/3a5923.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/63fb83.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/63fb83.wgsl.expected.spvasm
index 6761aaa..3f2a1bf 100644
--- a/test/tint/builtins/gen/textureSampleCompare/63fb83.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/63fb83.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 0 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/98b85c.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/98b85c.wgsl.expected.spvasm
index 1d15e69..d0f924c 100644
--- a/test/tint/builtins/gen/textureSampleCompare/98b85c.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/98b85c.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 1 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/a3ca7e.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/a3ca7e.wgsl.expected.spvasm
index 9797345..e1df692 100644
--- a/test/tint/builtins/gen/textureSampleCompare/a3ca7e.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/a3ca7e.wgsl.expected.spvasm
@@ -18,7 +18,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 1 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompare/dd431d.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompare/dd431d.wgsl.expected.spvasm
index 4f04f6d..f14e8bd 100644
--- a/test/tint/builtins/gen/textureSampleCompare/dd431d.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompare/dd431d.wgsl.expected.spvasm
@@ -17,7 +17,7 @@
                OpDecorate %arg_1 DescriptorSet 1
                OpDecorate %arg_1 Binding 1
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 1 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
       %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
           %7 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
index 08eaacd..47d942c 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
index 45efa23..d347914 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
index 834d5df..d85ceba 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
index 177f6f9..c97b967 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
index 8102ae6..d4414e7 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
@@ -35,7 +35,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
index 4220224..e74be2e 100644
--- a/test/tint/builtins/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/02be59.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
index b8fed20..9a11696 100644
--- a/test/tint/builtins/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
index 38d4e45..fe52162 100644
--- a/test/tint/builtins/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
index 8be8c18..28e2210 100644
--- a/test/tint/builtins/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
index 4a78cb0..e46c365 100644
--- a/test/tint/builtins/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
index 50ca7f9..550cf30 100644
--- a/test/tint/builtins/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
@@ -35,7 +35,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+         %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm b/test/tint/builtins/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
index 605376e..043c7ba 100644
--- a/test/tint/builtins/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
+++ b/test/tint/builtins/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
@@ -34,7 +34,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+         %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
          %14 = OpTypeSampler
diff --git a/test/tint/builtins/textureDimensions/depth_ms.spvasm.expected.spvasm b/test/tint/builtins/textureDimensions/depth_ms.spvasm.expected.spvasm
index da6327a..d551eb8 100644
--- a/test/tint/builtins/textureDimensions/depth_ms.spvasm.expected.spvasm
+++ b/test/tint/builtins/textureDimensions/depth_ms.spvasm.expected.spvasm
@@ -41,7 +41,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
 %_ptr_Private_v4float = OpTypePointer Private %v4float
diff --git a/test/tint/builtins/textureLoad/depth_ms.spvasm.expected.spvasm b/test/tint/builtins/textureLoad/depth_ms.spvasm.expected.spvasm
index f03287e..ffa937e 100644
--- a/test/tint/builtins/textureLoad/depth_ms.spvasm.expected.spvasm
+++ b/test/tint/builtins/textureLoad/depth_ms.spvasm.expected.spvasm
@@ -40,7 +40,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
 %_ptr_Private_v4float = OpTypePointer Private %v4float
diff --git a/test/tint/builtins/textureNumSamples/depth_ms.spvasm.expected.spvasm b/test/tint/builtins/textureNumSamples/depth_ms.spvasm.expected.spvasm
index cf053b2..5844481 100644
--- a/test/tint/builtins/textureNumSamples/depth_ms.spvasm.expected.spvasm
+++ b/test/tint/builtins/textureNumSamples/depth_ms.spvasm.expected.spvasm
@@ -41,7 +41,7 @@
 %_ptr_Output_float = OpTypePointer Output %float
           %8 = OpConstantNull %float
 %vertex_point_size = OpVariable %_ptr_Output_float Output %8
-         %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+         %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
 %_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
       %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
 %_ptr_Private_v4float = OpTypePointer Private %v4float
diff --git a/test/tint/types/texture/depth/2d.wgsl.expected.spvasm b/test/tint/types/texture/depth/2d.wgsl.expected.spvasm
index 868f0b0..42e93f5 100644
--- a/test/tint/types/texture/depth/2d.wgsl.expected.spvasm
+++ b/test/tint/types/texture/depth/2d.wgsl.expected.spvasm
@@ -12,7 +12,7 @@
                OpDecorate %t_f DescriptorSet 0
                OpDecorate %t_f Binding 0
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
         %t_f = OpVariable %_ptr_UniformConstant_3 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/types/texture/depth/2d_array.wgsl.expected.spvasm b/test/tint/types/texture/depth/2d_array.wgsl.expected.spvasm
index 06f3808..95abab7 100644
--- a/test/tint/types/texture/depth/2d_array.wgsl.expected.spvasm
+++ b/test/tint/types/texture/depth/2d_array.wgsl.expected.spvasm
@@ -12,7 +12,7 @@
                OpDecorate %t_f DescriptorSet 0
                OpDecorate %t_f Binding 0
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float 2D 1 1 0 1 Unknown
+          %3 = OpTypeImage %float 2D 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
         %t_f = OpVariable %_ptr_UniformConstant_3 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/types/texture/depth/cube.wgsl.expected.spvasm b/test/tint/types/texture/depth/cube.wgsl.expected.spvasm
index 196b27d..fe4345e 100644
--- a/test/tint/types/texture/depth/cube.wgsl.expected.spvasm
+++ b/test/tint/types/texture/depth/cube.wgsl.expected.spvasm
@@ -12,7 +12,7 @@
                OpDecorate %t_f DescriptorSet 0
                OpDecorate %t_f Binding 0
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 0 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 0 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
         %t_f = OpVariable %_ptr_UniformConstant_3 UniformConstant
        %void = OpTypeVoid
diff --git a/test/tint/types/texture/depth/cube_array.wgsl.expected.spvasm b/test/tint/types/texture/depth/cube_array.wgsl.expected.spvasm
index 89de47d..0e215cf 100644
--- a/test/tint/types/texture/depth/cube_array.wgsl.expected.spvasm
+++ b/test/tint/types/texture/depth/cube_array.wgsl.expected.spvasm
@@ -13,7 +13,7 @@
                OpDecorate %t_f DescriptorSet 0
                OpDecorate %t_f Binding 0
       %float = OpTypeFloat 32
-          %3 = OpTypeImage %float Cube 1 1 0 1 Unknown
+          %3 = OpTypeImage %float Cube 0 1 0 1 Unknown
 %_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
         %t_f = OpVariable %_ptr_UniformConstant_3 UniformConstant
        %void = OpTypeVoid