; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 45
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %value "value"
               OpName %vertex_point_size "vertex_point_size"
               OpName %arg_0 "arg_0"
               OpName %textureStore_84f4f4 "textureStore_84f4f4"
               OpName %vertex_main_inner "vertex_main_inner"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %value BuiltIn Position
               OpDecorate %vertex_point_size BuiltIn PointSize
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
      %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
          %8 = OpConstantNull %float
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
        %int = OpTypeInt 32 1
         %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
      %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
       %void = OpTypeVoid
         %13 = OpTypeFunction %void
       %uint = OpTypeInt 32 0
     %v3uint = OpTypeVector %uint 3
     %v2uint = OpTypeVector %uint 2
     %uint_1 = OpConstant %uint 1
         %23 = OpConstantComposite %v2uint %uint_1 %uint_1
      %int_1 = OpConstant %int 1
      %v4int = OpTypeVector %int 4
         %30 = OpConstantComposite %v4int %int_1 %int_1 %int_1 %int_1
         %31 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%textureStore_84f4f4 = OpFunction %void None %13
         %16 = OpLabel
         %18 = OpLoad %11 %arg_0
         %24 = OpCompositeExtract %uint %23 0
         %25 = OpCompositeExtract %uint %23 1
         %26 = OpBitcast %uint %int_1
         %28 = OpCompositeConstruct %v3uint %24 %25 %26
               OpImageWrite %18 %28 %30
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %31
         %33 = OpLabel
         %34 = OpFunctionCall %void %textureStore_84f4f4
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %13
         %36 = OpLabel
         %37 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %37
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %13
         %40 = OpLabel
         %41 = OpFunctionCall %void %textureStore_84f4f4
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %13
         %43 = OpLabel
         %44 = OpFunctionCall %void %textureStore_84f4f4
               OpReturn
               OpFunctionEnd
