; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 41
; Schema: 0
               OpCapability Shader
               OpCapability StorageImageExtendedFormats
               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_c863be "textureStore_c863be"
               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 NonReadable
               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
         %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
      %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
       %void = OpTypeVoid
         %12 = OpTypeFunction %void
        %int = OpTypeInt 32 1
      %v3int = OpTypeVector %int 3
      %v2int = OpTypeVector %int 2
      %int_1 = OpConstant %int 1
         %22 = OpConstantComposite %v2int %int_1 %int_1
    %float_1 = OpConstant %float 1
         %27 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
         %28 = OpTypeFunction %v4float
%textureStore_c863be = OpFunction %void None %12
         %15 = OpLabel
         %17 = OpLoad %11 %arg_0
         %23 = OpCompositeExtract %int %22 0
         %24 = OpCompositeExtract %int %22 1
         %25 = OpCompositeConstruct %v3int %23 %24 %int_1
               OpImageWrite %17 %25 %27
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %28
         %30 = OpLabel
         %31 = OpFunctionCall %void %textureStore_c863be
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %12
         %33 = OpLabel
         %34 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %34
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %12
         %36 = OpLabel
         %37 = OpFunctionCall %void %textureStore_c863be
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %12
         %39 = OpLabel
         %40 = OpFunctionCall %void %textureStore_c863be
               OpReturn
               OpFunctionEnd
