Remove VkShaderModule check

If vkCreateShaderModule() is successful then there should a non-null
handle afterwards. Convert if statement to DAWN_CHECK.

Bug: 411152029
Change-Id: Iaab3849746654d87c7a5c8af0d914d0046964ce1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/239655
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Kyle Charbonneau <kylechar@google.com>
diff --git a/src/dawn/native/vulkan/ShaderModuleVk.cpp b/src/dawn/native/vulkan/ShaderModuleVk.cpp
index e2414c8..5e6634e 100644
--- a/src/dawn/native/vulkan/ShaderModuleVk.cpp
+++ b/src/dawn/native/vulkan/ShaderModuleVk.cpp
@@ -424,21 +424,14 @@
             device->fn.CreateShaderModule(device->GetVkDevice(), &createInfo, nullptr, &*newHandle),
             "CreateShaderModule"));
     }
+    DAWN_CHECK(newHandle != VK_NULL_HANDLE);
 
-    ModuleAndSpirv moduleAndSpirv;
-    if (newHandle != VK_NULL_HANDLE) {
-        device->GetBlobCache()->EnsureStored(compilation);
+    device->GetBlobCache()->EnsureStored(compilation);
+    SetDebugName(ToBackend(GetDevice()), newHandle, "Dawn_ShaderModule", GetLabel());
 
-        // Set the label on `newHandle` now, and not on `moduleAndSpirv.module` later
-        // since `moduleAndSpirv.module` may be in use by multiple threads.
-        SetDebugName(ToBackend(GetDevice()), newHandle, "Dawn_ShaderModule", GetLabel());
-
-        moduleAndSpirv.module = newHandle;
-        moduleAndSpirv.spirv = std::move(compilation->spirv);
-        moduleAndSpirv.hasInputAttachment = hasInputAttachment;
-    }
-
-    return std::move(moduleAndSpirv);
+    return ModuleAndSpirv{.module = newHandle,
+                          .spirv = std::move(compilation->spirv),
+                          .hasInputAttachment = hasInputAttachment};
 #else
     return DAWN_INTERNAL_ERROR("TINT_BUILD_SPV_WRITER is not defined.");
 #endif