; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 69
; Schema: 0
               OpCapability Shader
               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 %prevent_dce_block 0 "inner"
               OpName %prevent_dce_block "prevent_dce_block"
               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_f348d9 "textureLoad_f348d9"
               OpName %arg_1 "arg_1"
               OpName %arg_2 "arg_2"
               OpName %arg_3 "arg_3"
               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 %prevent_dce_block 0 Offset 0
               OpDecorate %prevent_dce_block Block
               OpDecorate %1 DescriptorSet 0
               OpDecorate %1 Binding 0
               OpDecorate %1 Coherent
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               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
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%prevent_dce_block = OpTypeStruct %v4float
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
          %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
          %8 = OpTypeImage %float 2D 0 1 0 1 Unknown
%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
      %arg_0 = OpVariable %_ptr_UniformConstant_8 UniformConstant
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %15 = OpTypeFunction %v4float
       %uint = OpTypeInt 32 0
     %v2uint = OpTypeVector %uint 2
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
     %uint_1 = OpConstant %uint 1
         %21 = OpConstantComposite %v2uint %uint_1 %uint_1
%_ptr_Function_uint = OpTypePointer Function %uint
        %int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
      %int_1 = OpConstant %int 1
     %v3uint = OpTypeVector %uint 3
%_ptr_Function_v4float = OpTypePointer Function %v4float
       %void = OpTypeVoid
         %41 = OpTypeFunction %void
%_ptr_StorageBuffer_v4float = OpTypePointer StorageBuffer %v4float
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v4float
         %53 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %57 = OpConstantNull %VertexOutput
         %59 = OpConstantNull %v4float
    %float_1 = OpConstant %float 1
%textureLoad_f348d9 = OpFunction %v4float None %15
         %16 = OpLabel
      %arg_1 = OpVariable %_ptr_Function_v2uint Function
      %arg_2 = OpVariable %_ptr_Function_uint Function
      %arg_3 = OpVariable %_ptr_Function_int Function
        %res = OpVariable %_ptr_Function_v4float Function
               OpStore %arg_1 %21
               OpStore %arg_2 %uint_1
               OpStore %arg_3 %int_1
         %29 = OpLoad %8 %arg_0 None
         %30 = OpLoad %v2uint %arg_1 None
         %31 = OpLoad %uint %arg_2 None
         %32 = OpLoad %int %arg_3 None
         %34 = OpCompositeConstruct %v3uint %30 %31
         %35 = OpImageFetch %v4float %29 %34 Lod %32
               OpStore %res %35
         %38 = OpLoad %v4float %res None
               OpReturnValue %38
               OpFunctionEnd
%fragment_main = OpFunction %void None %41
         %42 = OpLabel
         %43 = OpFunctionCall %v4float %textureLoad_f348d9
         %44 = OpAccessChain %_ptr_StorageBuffer_v4float %1 %uint_0
               OpStore %44 %43 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %41
         %48 = OpLabel
         %49 = OpFunctionCall %v4float %textureLoad_f348d9
         %50 = OpAccessChain %_ptr_StorageBuffer_v4float %1 %uint_0
               OpStore %50 %49 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %53
         %54 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %57
         %58 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %58 %59 None
         %60 = OpAccessChain %_ptr_Function_v4float %out %uint_1
         %61 = OpFunctionCall %v4float %textureLoad_f348d9
               OpStore %60 %61 None
         %62 = OpLoad %VertexOutput %out None
               OpReturnValue %62
               OpFunctionEnd
%vertex_main = OpFunction %void None %41
         %64 = OpLabel
         %65 = OpFunctionCall %VertexOutput %vertex_main_inner
         %66 = OpCompositeExtract %v4float %65 0
               OpStore %vertex_main_position_Output %66 None
         %67 = OpCompositeExtract %v4float %65 1
               OpStore %vertex_main_loc0_Output %67 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
