; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 104
; 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_50c072 "firstTrailingBit_50c072"
               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
        %int = OpTypeInt 32 1
      %v2int = OpTypeVector %int 2
          %9 = OpTypeFunction %v2int %v2int
       %uint = OpTypeInt 32 0
     %v2uint = OpTypeVector %uint 2
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
         %20 = OpConstantNull %v2uint
       %bool = OpTypeBool
     %v2bool = OpTypeVector %bool 2
 %uint_65535 = OpConstant %uint 65535
         %27 = OpConstantComposite %v2uint %uint_65535 %uint_65535
    %uint_16 = OpConstant %uint 16
         %30 = OpConstantComposite %v2uint %uint_16 %uint_16
   %uint_255 = OpConstant %uint 255
         %37 = OpConstantComposite %v2uint %uint_255 %uint_255
     %uint_8 = OpConstant %uint 8
         %40 = OpConstantComposite %v2uint %uint_8 %uint_8
    %uint_15 = OpConstant %uint 15
         %47 = OpConstantComposite %v2uint %uint_15 %uint_15
     %uint_4 = OpConstant %uint 4
         %50 = OpConstantComposite %v2uint %uint_4 %uint_4
     %uint_3 = OpConstant %uint 3
         %57 = OpConstantComposite %v2uint %uint_3 %uint_3
     %uint_2 = OpConstant %uint 2
         %60 = OpConstantComposite %v2uint %uint_2 %uint_2
     %uint_1 = OpConstant %uint 1
         %67 = OpConstantComposite %v2uint %uint_1 %uint_1
%uint_4294967295 = OpConstant %uint 4294967295
         %73 = OpConstantComposite %v2uint %uint_4294967295 %uint_4294967295
       %void = OpTypeVoid
         %80 = OpTypeFunction %void
         %84 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
         %90 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%tint_first_trailing_bit = OpFunction %v2int None %9
          %v = OpFunctionParameter %v2int
         %14 = OpLabel
          %x = OpVariable %_ptr_Function_v2uint Function %20
         %15 = OpBitcast %v2uint %v
               OpStore %x %15
         %25 = OpLoad %v2uint %x
         %28 = OpBitwiseAnd %v2uint %25 %27
         %22 = OpINotEqual %v2bool %28 %20
         %21 = OpSelect %v2uint %22 %20 %30
         %31 = OpLoad %v2uint %x
         %32 = OpShiftRightLogical %v2uint %31 %21
               OpStore %x %32
         %35 = OpLoad %v2uint %x
         %38 = OpBitwiseAnd %v2uint %35 %37
         %34 = OpINotEqual %v2bool %38 %20
         %33 = OpSelect %v2uint %34 %20 %40
         %41 = OpLoad %v2uint %x
         %42 = OpShiftRightLogical %v2uint %41 %33
               OpStore %x %42
         %45 = OpLoad %v2uint %x
         %48 = OpBitwiseAnd %v2uint %45 %47
         %44 = OpINotEqual %v2bool %48 %20
         %43 = OpSelect %v2uint %44 %20 %50
         %51 = OpLoad %v2uint %x
         %52 = OpShiftRightLogical %v2uint %51 %43
               OpStore %x %52
         %55 = OpLoad %v2uint %x
         %58 = OpBitwiseAnd %v2uint %55 %57
         %54 = OpINotEqual %v2bool %58 %20
         %53 = OpSelect %v2uint %54 %20 %60
         %61 = OpLoad %v2uint %x
         %62 = OpShiftRightLogical %v2uint %61 %53
               OpStore %x %62
         %65 = OpLoad %v2uint %x
         %68 = OpBitwiseAnd %v2uint %65 %67
         %64 = OpINotEqual %v2bool %68 %20
         %63 = OpSelect %v2uint %64 %20 %67
         %70 = OpLoad %v2uint %x
         %71 = OpIEqual %v2bool %70 %20
         %69 = OpSelect %v2uint %71 %73 %20
         %75 = OpBitwiseOr %v2uint %21 %33
         %76 = OpBitwiseOr %v2uint %75 %43
         %77 = OpBitwiseOr %v2uint %76 %53
         %78 = OpBitwiseOr %v2uint %77 %63
         %79 = OpBitwiseOr %v2uint %78 %69
         %74 = OpBitcast %v2int %79
               OpReturnValue %74
               OpFunctionEnd
%firstTrailingBit_50c072 = OpFunction %void None %80
         %83 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v2int Function %84
        %res = OpVariable %_ptr_Function_v2int Function %84
               OpStore %arg_0 %84
         %88 = OpLoad %v2int %arg_0
         %87 = OpFunctionCall %v2int %tint_first_trailing_bit %88
               OpStore %res %87
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %90
         %92 = OpLabel
         %93 = OpFunctionCall %void %firstTrailingBit_50c072
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %80
         %95 = OpLabel
         %96 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %96
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %80
         %99 = OpLabel
        %100 = OpFunctionCall %void %firstTrailingBit_50c072
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %80
        %102 = OpLabel
        %103 = OpFunctionCall %void %firstTrailingBit_50c072
               OpReturn
               OpFunctionEnd
