; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 100
; 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 %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
      %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
          %9 = OpTypeFunction %v3uint %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
         %18 = OpConstantNull %v3uint
       %bool = OpTypeBool
     %v3bool = OpTypeVector %bool 3
 %uint_65535 = OpConstant %uint 65535
         %25 = OpConstantComposite %v3uint %uint_65535 %uint_65535 %uint_65535
    %uint_16 = OpConstant %uint 16
         %28 = OpConstantComposite %v3uint %uint_16 %uint_16 %uint_16
   %uint_255 = OpConstant %uint 255
         %35 = OpConstantComposite %v3uint %uint_255 %uint_255 %uint_255
     %uint_8 = OpConstant %uint 8
         %38 = OpConstantComposite %v3uint %uint_8 %uint_8 %uint_8
    %uint_15 = OpConstant %uint 15
         %45 = OpConstantComposite %v3uint %uint_15 %uint_15 %uint_15
     %uint_4 = OpConstant %uint 4
         %48 = OpConstantComposite %v3uint %uint_4 %uint_4 %uint_4
     %uint_3 = OpConstant %uint 3
         %55 = OpConstantComposite %v3uint %uint_3 %uint_3 %uint_3
     %uint_2 = OpConstant %uint 2
         %58 = OpConstantComposite %v3uint %uint_2 %uint_2 %uint_2
     %uint_1 = OpConstant %uint 1
         %65 = OpConstantComposite %v3uint %uint_1 %uint_1 %uint_1
%uint_4294967295 = OpConstant %uint 4294967295
         %71 = OpConstantComposite %v3uint %uint_4294967295 %uint_4294967295 %uint_4294967295
       %void = OpTypeVoid
         %78 = OpTypeFunction %void
         %86 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%tint_first_trailing_bit = OpFunction %v3uint None %9
          %v = OpFunctionParameter %v3uint
         %14 = OpLabel
          %x = OpVariable %_ptr_Function_v3uint Function %18
               OpStore %x %v
         %23 = OpLoad %v3uint %x
         %26 = OpBitwiseAnd %v3uint %23 %25
         %20 = OpINotEqual %v3bool %26 %18
         %19 = OpSelect %v3uint %20 %18 %28
         %29 = OpLoad %v3uint %x
         %30 = OpShiftRightLogical %v3uint %29 %19
               OpStore %x %30
         %33 = OpLoad %v3uint %x
         %36 = OpBitwiseAnd %v3uint %33 %35
         %32 = OpINotEqual %v3bool %36 %18
         %31 = OpSelect %v3uint %32 %18 %38
         %39 = OpLoad %v3uint %x
         %40 = OpShiftRightLogical %v3uint %39 %31
               OpStore %x %40
         %43 = OpLoad %v3uint %x
         %46 = OpBitwiseAnd %v3uint %43 %45
         %42 = OpINotEqual %v3bool %46 %18
         %41 = OpSelect %v3uint %42 %18 %48
         %49 = OpLoad %v3uint %x
         %50 = OpShiftRightLogical %v3uint %49 %41
               OpStore %x %50
         %53 = OpLoad %v3uint %x
         %56 = OpBitwiseAnd %v3uint %53 %55
         %52 = OpINotEqual %v3bool %56 %18
         %51 = OpSelect %v3uint %52 %18 %58
         %59 = OpLoad %v3uint %x
         %60 = OpShiftRightLogical %v3uint %59 %51
               OpStore %x %60
         %63 = OpLoad %v3uint %x
         %66 = OpBitwiseAnd %v3uint %63 %65
         %62 = OpINotEqual %v3bool %66 %18
         %61 = OpSelect %v3uint %62 %18 %65
         %68 = OpLoad %v3uint %x
         %69 = OpIEqual %v3bool %68 %18
         %67 = OpSelect %v3uint %69 %71 %18
         %73 = OpBitwiseOr %v3uint %19 %31
         %74 = OpBitwiseOr %v3uint %73 %41
         %75 = OpBitwiseOr %v3uint %74 %51
         %76 = OpBitwiseOr %v3uint %75 %61
         %77 = OpBitwiseOr %v3uint %76 %67
               OpReturnValue %77
               OpFunctionEnd
%firstTrailingBit_cb51ce = OpFunction %void None %78
         %81 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v3uint Function %18
        %res = OpVariable %_ptr_Function_v3uint Function %18
               OpStore %arg_0 %65
         %84 = OpLoad %v3uint %arg_0
         %83 = OpFunctionCall %v3uint %tint_first_trailing_bit %84
               OpStore %res %83
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %86
         %88 = OpLabel
         %89 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %78
         %91 = OpLabel
         %92 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %92
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %78
         %95 = OpLabel
         %96 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %78
         %98 = OpLabel
         %99 = OpFunctionCall %void %firstTrailingBit_cb51ce
               OpReturn
               OpFunctionEnd
