; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 101
; 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 %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 %firstTrailingBit_110f2c "firstTrailingBit_110f2c"
               OpName %arg_0 "arg_0"
               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 %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
       %uint = OpTypeInt 32 0
     %v4uint = OpTypeVector %uint 4
%prevent_dce_block = OpTypeStruct %v4uint
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
          %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_v4uint = OpTypePointer Output %v4uint
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v4uint Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %15 = OpTypeFunction %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
     %uint_1 = OpConstant %uint 1
         %19 = OpConstantComposite %v4uint %uint_1 %uint_1 %uint_1 %uint_1
 %uint_65535 = OpConstant %uint 65535
         %23 = OpConstantComposite %v4uint %uint_65535 %uint_65535 %uint_65535 %uint_65535
         %26 = OpConstantNull %v4uint
       %bool = OpTypeBool
     %v4bool = OpTypeVector %bool 4
    %uint_16 = OpConstant %uint 16
         %30 = OpConstantComposite %v4uint %uint_16 %uint_16 %uint_16 %uint_16
   %uint_255 = OpConstant %uint 255
         %34 = OpConstantComposite %v4uint %uint_255 %uint_255 %uint_255 %uint_255
     %uint_8 = OpConstant %uint 8
         %38 = OpConstantComposite %v4uint %uint_8 %uint_8 %uint_8 %uint_8
    %uint_15 = OpConstant %uint 15
         %42 = OpConstantComposite %v4uint %uint_15 %uint_15 %uint_15 %uint_15
     %uint_4 = OpConstant %uint 4
         %46 = OpConstantComposite %v4uint %uint_4 %uint_4 %uint_4 %uint_4
     %uint_3 = OpConstant %uint 3
         %50 = OpConstantComposite %v4uint %uint_3 %uint_3 %uint_3 %uint_3
     %uint_2 = OpConstant %uint 2
         %54 = OpConstantComposite %v4uint %uint_2 %uint_2 %uint_2 %uint_2
%uint_4294967295 = OpConstant %uint 4294967295
         %66 = OpConstantComposite %v4uint %uint_4294967295 %uint_4294967295 %uint_4294967295 %uint_4294967295
       %void = OpTypeVoid
         %72 = OpTypeFunction %void
%_ptr_StorageBuffer_v4uint = OpTypePointer StorageBuffer %v4uint
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v4uint
         %84 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %88 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %91 = OpConstantNull %v4float
    %float_1 = OpConstant %float 1
%firstTrailingBit_110f2c = OpFunction %v4uint None %15
         %16 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v4uint Function
        %res = OpVariable %_ptr_Function_v4uint Function
               OpStore %arg_0 %19
         %21 = OpLoad %v4uint %arg_0 None
         %22 = OpBitwiseAnd %v4uint %21 %23
         %25 = OpIEqual %v4bool %22 %26
         %29 = OpSelect %v4uint %25 %30 %26
         %32 = OpShiftRightLogical %v4uint %21 %29
         %33 = OpBitwiseAnd %v4uint %32 %34
         %36 = OpIEqual %v4bool %33 %26
         %37 = OpSelect %v4uint %36 %38 %26
         %40 = OpShiftRightLogical %v4uint %32 %37
         %41 = OpBitwiseAnd %v4uint %40 %42
         %44 = OpIEqual %v4bool %41 %26
         %45 = OpSelect %v4uint %44 %46 %26
         %48 = OpShiftRightLogical %v4uint %40 %45
         %49 = OpBitwiseAnd %v4uint %48 %50
         %52 = OpIEqual %v4bool %49 %26
         %53 = OpSelect %v4uint %52 %54 %26
         %56 = OpShiftRightLogical %v4uint %48 %53
         %57 = OpBitwiseAnd %v4uint %56 %19
         %58 = OpIEqual %v4bool %57 %26
         %59 = OpSelect %v4uint %58 %19 %26
         %60 = OpBitwiseOr %v4uint %53 %59
         %61 = OpBitwiseOr %v4uint %45 %60
         %62 = OpBitwiseOr %v4uint %37 %61
         %63 = OpBitwiseOr %v4uint %29 %62
         %64 = OpIEqual %v4bool %56 %26
         %65 = OpSelect %v4uint %64 %66 %63
               OpStore %res %65
         %69 = OpLoad %v4uint %res None
               OpReturnValue %69
               OpFunctionEnd
%fragment_main = OpFunction %void None %72
         %73 = OpLabel
         %74 = OpFunctionCall %v4uint %firstTrailingBit_110f2c
         %75 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %75 %74 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %72
         %79 = OpLabel
         %80 = OpFunctionCall %v4uint %firstTrailingBit_110f2c
         %81 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %81 %80 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %84
         %85 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %88
         %89 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %89 %91 None
         %92 = OpAccessChain %_ptr_Function_v4uint %out %uint_1
         %93 = OpFunctionCall %v4uint %firstTrailingBit_110f2c
               OpStore %92 %93 None
         %94 = OpLoad %VertexOutput %out None
               OpReturnValue %94
               OpFunctionEnd
%vertex_main = OpFunction %void None %72
         %96 = OpLabel
         %97 = OpFunctionCall %VertexOutput %vertex_main_inner
         %98 = OpCompositeExtract %v4float %97 0
               OpStore %vertex_main_position_Output %98 None
         %99 = OpCompositeExtract %v4uint %97 1
               OpStore %vertex_main_loc0_Output %99 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
