; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 107
; Schema: 0
               OpCapability Shader
               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 %prevent_dce_block "prevent_dce_block"
               OpMemberName %prevent_dce_block 0 "inner"
               OpName %prevent_dce "prevent_dce"
               OpName %tint_first_trailing_bit "tint_first_trailing_bit"
               OpName %v "v"
               OpName %x "x"
               OpName %firstTrailingBit_cb51ce "firstTrailingBit_cb51ce"
               OpName %arg_0 "arg_0"
               OpName %res "res"
               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 %prevent_dce_block Block
               OpMemberDecorate %prevent_dce_block 0 Offset 0
               OpDecorate %prevent_dce DescriptorSet 2
               OpDecorate %prevent_dce 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
       %uint = OpTypeInt 32 0
     %v3uint = OpTypeVector %uint 3
%prevent_dce_block = OpTypeStruct %v3uint
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
         %14 = OpTypeFunction %v3uint %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
         %21 = OpConstantNull %v3uint
       %bool = OpTypeBool
     %v3bool = OpTypeVector %bool 3
 %uint_65535 = OpConstant %uint 65535
         %28 = OpConstantComposite %v3uint %uint_65535 %uint_65535 %uint_65535
    %uint_16 = OpConstant %uint 16
         %31 = OpConstantComposite %v3uint %uint_16 %uint_16 %uint_16
   %uint_255 = OpConstant %uint 255
         %38 = OpConstantComposite %v3uint %uint_255 %uint_255 %uint_255
     %uint_8 = OpConstant %uint 8
         %41 = OpConstantComposite %v3uint %uint_8 %uint_8 %uint_8
    %uint_15 = OpConstant %uint 15
         %48 = OpConstantComposite %v3uint %uint_15 %uint_15 %uint_15
     %uint_4 = OpConstant %uint 4
         %51 = OpConstantComposite %v3uint %uint_4 %uint_4 %uint_4
     %uint_3 = OpConstant %uint 3
         %58 = OpConstantComposite %v3uint %uint_3 %uint_3 %uint_3
     %uint_2 = OpConstant %uint 2
         %61 = OpConstantComposite %v3uint %uint_2 %uint_2 %uint_2
     %uint_1 = OpConstant %uint 1
         %68 = OpConstantComposite %v3uint %uint_1 %uint_1 %uint_1
%uint_4294967295 = OpConstant %uint 4294967295
         %74 = OpConstantComposite %v3uint %uint_4294967295 %uint_4294967295 %uint_4294967295
       %void = OpTypeVoid
         %81 = OpTypeFunction %void
     %uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v3uint = OpTypePointer StorageBuffer %v3uint
         %93 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%tint_first_trailing_bit = OpFunction %v3uint None %14
          %v = OpFunctionParameter %v3uint
         %17 = OpLabel
          %x = OpVariable %_ptr_Function_v3uint Function %21
               OpStore %x %v
         %26 = OpLoad %v3uint %x
         %29 = OpBitwiseAnd %v3uint %26 %28
         %23 = OpINotEqual %v3bool %29 %21
         %22 = OpSelect %v3uint %23 %21 %31
         %32 = OpLoad %v3uint %x
         %33 = OpShiftRightLogical %v3uint %32 %22
               OpStore %x %33
         %36 = OpLoad %v3uint %x
         %39 = OpBitwiseAnd %v3uint %36 %38
         %35 = OpINotEqual %v3bool %39 %21
         %34 = OpSelect %v3uint %35 %21 %41
         %42 = OpLoad %v3uint %x
         %43 = OpShiftRightLogical %v3uint %42 %34
               OpStore %x %43
         %46 = OpLoad %v3uint %x
         %49 = OpBitwiseAnd %v3uint %46 %48
         %45 = OpINotEqual %v3bool %49 %21
         %44 = OpSelect %v3uint %45 %21 %51
         %52 = OpLoad %v3uint %x
         %53 = OpShiftRightLogical %v3uint %52 %44
               OpStore %x %53
         %56 = OpLoad %v3uint %x
         %59 = OpBitwiseAnd %v3uint %56 %58
         %55 = OpINotEqual %v3bool %59 %21
         %54 = OpSelect %v3uint %55 %21 %61
         %62 = OpLoad %v3uint %x
         %63 = OpShiftRightLogical %v3uint %62 %54
               OpStore %x %63
         %66 = OpLoad %v3uint %x
         %69 = OpBitwiseAnd %v3uint %66 %68
         %65 = OpINotEqual %v3bool %69 %21
         %64 = OpSelect %v3uint %65 %21 %68
         %71 = OpLoad %v3uint %x
         %72 = OpIEqual %v3bool %71 %21
         %70 = OpSelect %v3uint %72 %74 %21
         %76 = OpBitwiseOr %v3uint %22 %34
         %77 = OpBitwiseOr %v3uint %76 %44
         %78 = OpBitwiseOr %v3uint %77 %54
         %79 = OpBitwiseOr %v3uint %78 %64
         %80 = OpBitwiseOr %v3uint %79 %70
               OpReturnValue %80
               OpFunctionEnd
%firstTrailingBit_cb51ce = OpFunction %void None %81
         %84 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v3uint Function %21
        %res = OpVariable %_ptr_Function_v3uint Function %21
               OpStore %arg_0 %68
         %87 = OpLoad %v3uint %arg_0
         %86 = OpFunctionCall %v3uint %tint_first_trailing_bit %87
               OpStore %res %86
         %91 = OpAccessChain %_ptr_StorageBuffer_v3uint %prevent_dce %uint_0
         %92 = OpLoad %v3uint %res
               OpStore %91 %92
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %93
         %95 = OpLabel
         %96 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %81
         %98 = OpLabel
         %99 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %99
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %81
        %102 = OpLabel
        %103 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %81
        %105 = OpLabel
        %106 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturn
               OpFunctionEnd
