; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 0 ; Bound: 96 ; 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_leading_bit "tint_first_leading_bit" OpName %v "v" OpName %x "x" OpName %firstLeadingBit_57a1a3 "firstLeadingBit_57a1a3" 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 %9 = OpTypeFunction %int %int %uint = OpTypeInt 32 0 %16 = OpConstantNull %int %bool = OpTypeBool %_ptr_Function_uint = OpTypePointer Function %uint %24 = OpConstantNull %uint %uint_4294901760 = OpConstant %uint 4294901760 %uint_16 = OpConstant %uint 16 %uint_65280 = OpConstant %uint 65280 %uint_8 = OpConstant %uint 8 %uint_240 = OpConstant %uint 240 %uint_4 = OpConstant %uint 4 %uint_12 = OpConstant %uint 12 %uint_2 = OpConstant %uint 2 %uint_1 = OpConstant %uint 1 %uint_4294967295 = OpConstant %uint 4294967295 %void = OpTypeVoid %72 = OpTypeFunction %void %int_1 = OpConstant %int 1 %_ptr_Function_int = OpTypePointer Function %int %82 = OpTypeFunction %v4float %float_1 = OpConstant %float 1 %tint_first_leading_bit = OpFunction %int None %9 %v = OpFunctionParameter %int %13 = OpLabel %x = OpVariable %_ptr_Function_uint Function %24 %17 = OpSLessThan %bool %v %16 %20 = OpNot %int %v %19 = OpBitcast %uint %20 %21 = OpBitcast %uint %v %14 = OpSelect %uint %17 %19 %21 OpStore %x %14 %27 = OpLoad %uint %x %29 = OpBitwiseAnd %uint %27 %uint_4294901760 %26 = OpINotEqual %bool %29 %24 %25 = OpSelect %uint %26 %uint_16 %24 %31 = OpLoad %uint %x %32 = OpShiftRightLogical %uint %31 %25 OpStore %x %32 %35 = OpLoad %uint %x %37 = OpBitwiseAnd %uint %35 %uint_65280 %34 = OpINotEqual %bool %37 %24 %33 = OpSelect %uint %34 %uint_8 %24 %39 = OpLoad %uint %x %40 = OpShiftRightLogical %uint %39 %33 OpStore %x %40 %43 = OpLoad %uint %x %45 = OpBitwiseAnd %uint %43 %uint_240 %42 = OpINotEqual %bool %45 %24 %41 = OpSelect %uint %42 %uint_4 %24 %47 = OpLoad %uint %x %48 = OpShiftRightLogical %uint %47 %41 OpStore %x %48 %51 = OpLoad %uint %x %53 = OpBitwiseAnd %uint %51 %uint_12 %50 = OpINotEqual %bool %53 %24 %49 = OpSelect %uint %50 %uint_2 %24 %55 = OpLoad %uint %x %56 = OpShiftRightLogical %uint %55 %49 OpStore %x %56 %59 = OpLoad %uint %x %60 = OpBitwiseAnd %uint %59 %uint_2 %58 = OpINotEqual %bool %60 %24 %57 = OpSelect %uint %58 %uint_1 %24 %63 = OpLoad %uint %x %64 = OpIEqual %bool %63 %24 %62 = OpSelect %uint %64 %uint_4294967295 %24 %67 = OpBitwiseOr %uint %25 %33 %68 = OpBitwiseOr %uint %67 %41 %69 = OpBitwiseOr %uint %68 %49 %70 = OpBitwiseOr %uint %69 %57 %71 = OpBitwiseOr %uint %70 %62 %66 = OpBitcast %int %71 OpReturnValue %66 OpFunctionEnd %firstLeadingBit_57a1a3 = OpFunction %void None %72 %75 = OpLabel %arg_0 = OpVariable %_ptr_Function_int Function %16 %res = OpVariable %_ptr_Function_int Function %16 OpStore %arg_0 %int_1 %80 = OpLoad %int %arg_0 %79 = OpFunctionCall %int %tint_first_leading_bit %80 OpStore %res %79 OpReturn OpFunctionEnd %vertex_main_inner = OpFunction %v4float None %82 %84 = OpLabel %85 = OpFunctionCall %void %firstLeadingBit_57a1a3 OpReturnValue %5 OpFunctionEnd %vertex_main = OpFunction %void None %72 %87 = OpLabel %88 = OpFunctionCall %v4float %vertex_main_inner OpStore %value %88 OpStore %vertex_point_size %float_1 OpReturn OpFunctionEnd %fragment_main = OpFunction %void None %72 %91 = OpLabel %92 = OpFunctionCall %void %firstLeadingBit_57a1a3 OpReturn OpFunctionEnd %compute_main = OpFunction %void None %72 %94 = OpLabel %95 = OpFunctionCall %void %firstLeadingBit_57a1a3 OpReturn OpFunctionEnd