; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 69
; Schema: 0
               OpCapability Shader
               OpCapability StorageImageExtendedFormats
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpEntryPoint Vertex %vertex_main "vertex_main" %vertex_main_position_Output %vertex_main_loc0_Output %vertex_main___point_size_Output
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpMemberName %tint_symbol_1 0 "tint_symbol"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %arg_0 "arg_0"
               OpName %vertex_main_position_Output "vertex_main_position_Output"
               OpName %vertex_main_loc0_Output "vertex_main_loc0_Output"
               OpName %vertex_main___point_size_Output "vertex_main___point_size_Output"
               OpName %textureLoad_8e5032 "textureLoad_8e5032"
               OpName %arg_1 "arg_1"
               OpName %arg_2 "arg_2"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpName %vertex_main_inner "vertex_main_inner"
               OpMemberName %VertexOutput 0 "pos"
               OpMemberName %VertexOutput 1 "prevent_dce"
               OpName %VertexOutput "VertexOutput"
               OpName %out "out"
               OpName %vertex_main "vertex_main"
               OpMemberDecorate %tint_symbol_1 0 Offset 0
               OpDecorate %tint_symbol_1 Block
               OpDecorate %1 DescriptorSet 0
               OpDecorate %1 Binding 0
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %arg_0 NonWritable
               OpDecorate %vertex_main_position_Output BuiltIn Position
               OpDecorate %vertex_main_loc0_Output Location 0
               OpDecorate %vertex_main_loc0_Output Flat
               OpDecorate %vertex_main___point_size_Output BuiltIn PointSize
               OpMemberDecorate %VertexOutput 0 Offset 0
               OpMemberDecorate %VertexOutput 1 Offset 16
       %uint = OpTypeInt 32 0
     %v4uint = OpTypeVector %uint 4
%tint_symbol_1 = OpTypeStruct %v4uint
%_ptr_StorageBuffer_tint_symbol_1 = OpTypePointer StorageBuffer %tint_symbol_1
          %1 = OpVariable %_ptr_StorageBuffer_tint_symbol_1 StorageBuffer
          %8 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
      %arg_0 = OpVariable %_ptr_UniformConstant_8 UniformConstant
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_v4uint = OpTypePointer Output %v4uint
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v4uint Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %18 = OpTypeFunction %v4uint
        %int = OpTypeInt 32 1
      %v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
      %int_1 = OpConstant %int 1
         %24 = OpConstantComposite %v2int %int_1 %int_1
%_ptr_Function_int = OpTypePointer Function %int
      %v3int = OpTypeVector %int 3
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
       %void = OpTypeVoid
         %39 = OpTypeFunction %void
%_ptr_StorageBuffer_v4uint = OpTypePointer StorageBuffer %v4uint
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v4uint
         %51 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %55 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %58 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
    %float_1 = OpConstant %float 1
%textureLoad_8e5032 = OpFunction %v4uint None %18
         %19 = OpLabel
      %arg_1 = OpVariable %_ptr_Function_v2int Function
      %arg_2 = OpVariable %_ptr_Function_int Function
        %res = OpVariable %_ptr_Function_v4uint Function
               OpStore %arg_1 %24
               OpStore %arg_2 %int_1
         %28 = OpLoad %8 %arg_0
         %29 = OpLoad %v2int %arg_1
         %30 = OpLoad %int %arg_2
         %32 = OpCompositeConstruct %v3int %29 %30
         %33 = OpImageRead %v4uint %28 %32 None
               OpStore %res %33
         %36 = OpLoad %v4uint %res
               OpReturnValue %36
               OpFunctionEnd
%fragment_main = OpFunction %void None %39
         %40 = OpLabel
         %41 = OpFunctionCall %v4uint %textureLoad_8e5032
         %42 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %42 %41
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %39
         %46 = OpLabel
         %47 = OpFunctionCall %v4uint %textureLoad_8e5032
         %48 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %48 %47
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %51
         %52 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %55
         %56 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %56 %58
         %59 = OpAccessChain %_ptr_Function_v4uint %out %uint_1
         %61 = OpFunctionCall %v4uint %textureLoad_8e5032
               OpStore %59 %61
         %62 = OpLoad %VertexOutput %out
               OpReturnValue %62
               OpFunctionEnd
%vertex_main = OpFunction %void None %39
         %64 = OpLabel
         %65 = OpFunctionCall %VertexOutput %vertex_main_inner
         %66 = OpCompositeExtract %v4float %65 0
               OpStore %vertex_main_position_Output %66
         %67 = OpCompositeExtract %v4uint %65 1
               OpStore %vertex_main_loc0_Output %67
               OpStore %vertex_main___point_size_Output %float_1
               OpReturn
               OpFunctionEnd
