; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 70
; 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 %tint_symbol_1 0 "tint_symbol"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %arg_0 "arg_0"
               OpName %arg_1 "arg_1"
               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 %textureSampleLevel_1bf73e "textureSampleLevel_1bf73e"
               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 %1 Coherent
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %arg_1 DescriptorSet 1
               OpDecorate %arg_1 Binding 1
               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
%tint_symbol_1 = OpTypeStruct %float
%_ptr_StorageBuffer_tint_symbol_1 = OpTypePointer StorageBuffer %tint_symbol_1
          %1 = OpVariable %_ptr_StorageBuffer_tint_symbol_1 StorageBuffer
          %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
      %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
         %10 = OpTypeSampler
%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
      %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main_loc0_Output = OpVariable %_ptr_Output_float Output
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %18 = OpTypeFunction %float
         %23 = OpTypeSampledImage %7
        %int = OpTypeInt 32 1
      %int_1 = OpConstant %int 1
    %v3float = OpTypeVector %float 3
    %v2float = OpTypeVector %float 2
    %float_1 = OpConstant %float 1
         %29 = OpConstantComposite %v2float %float_1 %float_1
%_ptr_Function_float = OpTypePointer Function %float
       %void = OpTypeVoid
         %40 = OpTypeFunction %void
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %float
         %53 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %57 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %60 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
%textureSampleLevel_1bf73e = OpFunction %float None %18
         %19 = OpLabel
        %res = OpVariable %_ptr_Function_float Function
         %20 = OpLoad %7 %arg_0 None
         %21 = OpLoad %10 %arg_1 None
         %22 = OpSampledImage %23 %20 %21
         %24 = OpConvertSToF %float %int_1
         %28 = OpCompositeConstruct %v3float %29 %24
         %32 = OpConvertSToF %float %int_1
         %33 = OpImageSampleExplicitLod %v4float %22 %28 Lod %32
         %34 = OpCompositeExtract %float %33 0
               OpStore %res %34
         %37 = OpLoad %float %res None
               OpReturnValue %37
               OpFunctionEnd
%fragment_main = OpFunction %void None %40
         %41 = OpLabel
         %42 = OpFunctionCall %float %textureSampleLevel_1bf73e
         %43 = OpAccessChain %_ptr_StorageBuffer_float %1 %uint_0
               OpStore %43 %42 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %40
         %48 = OpLabel
         %49 = OpFunctionCall %float %textureSampleLevel_1bf73e
         %50 = OpAccessChain %_ptr_StorageBuffer_float %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 %60 None
         %61 = OpAccessChain %_ptr_Function_float %out %uint_1
         %63 = OpFunctionCall %float %textureSampleLevel_1bf73e
               OpStore %61 %63 None
         %64 = OpLoad %VertexOutput %out None
               OpReturnValue %64
               OpFunctionEnd
%vertex_main = OpFunction %void None %40
         %66 = OpLabel
         %67 = OpFunctionCall %VertexOutput %vertex_main_inner
         %68 = OpCompositeExtract %v4float %67 0
               OpStore %vertex_main_position_Output %68 None
         %69 = OpCompositeExtract %float %67 1
               OpStore %vertex_main_loc0_Output %69 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
