; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 69
; Schema: 0
               OpCapability Shader
               OpCapability SampledCubeArray
               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_1 "arg_1"
               OpName %arg_2 "arg_2"
               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 %textureGather_c0640c "textureGather_c0640c"
               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_1 DescriptorSet 1
               OpDecorate %arg_1 Binding 1
               OpDecorate %arg_2 DescriptorSet 1
               OpDecorate %arg_2 Binding 2
               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
        %int = OpTypeInt 32 1
      %v4int = OpTypeVector %int 4
%tint_symbol_1 = OpTypeStruct %v4int
%_ptr_StorageBuffer_tint_symbol_1 = OpTypePointer StorageBuffer %tint_symbol_1
          %1 = OpVariable %_ptr_StorageBuffer_tint_symbol_1 StorageBuffer
          %8 = OpTypeImage %int Cube 0 1 0 1 Unknown
%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
      %arg_1 = OpVariable %_ptr_UniformConstant_8 UniformConstant
         %11 = OpTypeSampler
%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
      %arg_2 = OpVariable %_ptr_UniformConstant_11 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_v4int = OpTypePointer Output %v4int
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v4int Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %21 = OpTypeFunction %v4int
         %26 = OpTypeSampledImage %8
      %int_1 = OpConstant %int 1
    %v3float = OpTypeVector %float 3
    %float_1 = OpConstant %float 1
         %30 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
       %void = OpTypeVoid
         %39 = OpTypeFunction %void
%_ptr_StorageBuffer_v4int = OpTypePointer StorageBuffer %v4int
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v4int
         %52 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %56 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %59 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
%textureGather_c0640c = OpFunction %v4int None %21
         %22 = OpLabel
        %res = OpVariable %_ptr_Function_v4int Function
         %23 = OpLoad %8 %arg_1 None
         %24 = OpLoad %11 %arg_2 None
         %25 = OpSampledImage %26 %23 %24
         %27 = OpConvertSToF %float %int_1
         %29 = OpCompositeConstruct %v4float %30 %27
         %33 = OpImageGather %v4int %25 %29 %int_1 None
               OpStore %res %33
         %36 = OpLoad %v4int %res None
               OpReturnValue %36
               OpFunctionEnd
%fragment_main = OpFunction %void None %39
         %40 = OpLabel
         %41 = OpFunctionCall %v4int %textureGather_c0640c
         %42 = OpAccessChain %_ptr_StorageBuffer_v4int %1 %uint_0
               OpStore %42 %41 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %39
         %47 = OpLabel
         %48 = OpFunctionCall %v4int %textureGather_c0640c
         %49 = OpAccessChain %_ptr_StorageBuffer_v4int %1 %uint_0
               OpStore %49 %48 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %52
         %53 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %56
         %57 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %57 %59 None
         %60 = OpAccessChain %_ptr_Function_v4int %out %uint_1
         %62 = OpFunctionCall %v4int %textureGather_c0640c
               OpStore %60 %62 None
         %63 = OpLoad %VertexOutput %out None
               OpReturnValue %63
               OpFunctionEnd
%vertex_main = OpFunction %void None %39
         %65 = OpLabel
         %66 = OpFunctionCall %VertexOutput %vertex_main_inner
         %67 = OpCompositeExtract %v4float %66 0
               OpStore %vertex_main_position_Output %67 None
         %68 = OpCompositeExtract %v4int %66 1
               OpStore %vertex_main_loc0_Output %68 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
