;
; fragment_main
;
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 19
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpName %arg_0 "arg_0"
               OpName %textureStore_86f713 "textureStore_86f713"
               OpName %fragment_main "fragment_main"
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %arg_0 Coherent
        %int = OpTypeInt 32 1
          %3 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
      %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
       %void = OpTypeVoid
          %7 = OpTypeFunction %void
      %v3int = OpTypeVector %int 3
      %int_1 = OpConstant %int 1
         %11 = OpConstantComposite %v3int %int_1 %int_1 %int_1
      %v4int = OpTypeVector %int 4
         %14 = OpConstantComposite %v4int %int_1 %int_1 %int_1 %int_1
%textureStore_86f713 = OpFunction %void None %7
          %8 = OpLabel
          %9 = OpLoad %3 %arg_0 None
               OpImageWrite %9 %11 %14 None
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %7
         %17 = OpLabel
         %18 = OpFunctionCall %void %textureStore_86f713
               OpReturn
               OpFunctionEnd
;
; compute_main
;
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 19
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %arg_0 "arg_0"
               OpName %textureStore_86f713 "textureStore_86f713"
               OpName %compute_main "compute_main"
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %arg_0 Coherent
        %int = OpTypeInt 32 1
          %3 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
      %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
       %void = OpTypeVoid
          %7 = OpTypeFunction %void
      %v3int = OpTypeVector %int 3
      %int_1 = OpConstant %int 1
         %11 = OpConstantComposite %v3int %int_1 %int_1 %int_1
      %v4int = OpTypeVector %int 4
         %14 = OpConstantComposite %v4int %int_1 %int_1 %int_1 %int_1
%textureStore_86f713 = OpFunction %void None %7
          %8 = OpLabel
          %9 = OpLoad %3 %arg_0 None
               OpImageWrite %9 %11 %14 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %7
         %17 = OpLabel
         %18 = OpFunctionCall %void %textureStore_86f713
               OpReturn
               OpFunctionEnd
