; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 38
; Schema: 0
               OpCapability Shader
               OpCapability StorageImageExtendedFormats
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %tint_pointsize "tint_pointsize"
               OpName %arg_0 "arg_0"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %textureStore_31745b "textureStore_31745b"
               OpName %tint_symbol_2 "tint_symbol_2"
               OpName %tint_symbol "tint_symbol"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %tint_pointsize BuiltIn PointSize
               OpDecorate %arg_0 NonReadable
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %tint_symbol_1 BuiltIn Position
      %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
          %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
        %int = OpTypeInt 32 1
          %7 = OpTypeImage %int 2D 0 0 0 2 Rg32i
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
      %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
         %12 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
       %void = OpTypeVoid
         %13 = OpTypeFunction %void
      %v2int = OpTypeVector %int 2
         %20 = OpConstantNull %v2int
      %v4int = OpTypeVector %int 4
         %22 = OpConstantNull %v4int
         %23 = OpTypeFunction %void %v4float
    %float_1 = OpConstant %float 1
%textureStore_31745b = OpFunction %void None %13
         %16 = OpLabel
         %18 = OpLoad %7 %arg_0
               OpImageWrite %18 %20 %22
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %23
%tint_symbol = OpFunctionParameter %v4float
         %26 = OpLabel
               OpStore %tint_symbol_1 %tint_symbol
               OpReturn
               OpFunctionEnd
%vertex_main = OpFunction %void None %13
         %28 = OpLabel
               OpStore %tint_pointsize %float_1
         %30 = OpFunctionCall %void %textureStore_31745b
         %31 = OpFunctionCall %void %tint_symbol_2 %12
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %13
         %33 = OpLabel
         %34 = OpFunctionCall %void %textureStore_31745b
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %13
         %36 = OpLabel
         %37 = OpFunctionCall %void %textureStore_31745b
               OpReturn
               OpFunctionEnd
