; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 0 ; Bound: 78 ; Schema: 0 OpCapability Shader %32 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Fragment %main "main" %x_GLF_color_1_1 OpExecutionMode %main OriginUpperLeft OpName %x_GLF_color_1_1 "x_GLF_color_1_1" OpName %buf0 "buf0" OpMemberName %buf0 0 "x_GLF_uniform_float_values" OpName %x_5 "x_5" OpName %x_GLF_color "x_GLF_color" OpName %buf1 "buf1" OpMemberName %buf1 0 "x_GLF_uniform_int_values" OpName %x_7 "x_7" OpName %main_1 "main_1" OpName %main_out "main_out" OpMemberName %main_out 0 "x_GLF_color_1" OpName %main_inner "main_inner" OpName %main "main" OpDecorate %x_GLF_color_1_1 Location 0 OpDecorate %buf0 Block OpMemberDecorate %buf0 0 Offset 0 OpDecorate %_arr_float_uint_1 ArrayStride 16 OpDecorate %x_5 NonWritable OpDecorate %x_5 DescriptorSet 0 OpDecorate %x_5 Binding 0 OpDecorate %buf1 Block OpMemberDecorate %buf1 0 Offset 0 OpDecorate %_arr_int_uint_2 ArrayStride 16 OpDecorate %x_7 NonWritable OpDecorate %x_7 DescriptorSet 0 OpDecorate %x_7 Binding 1 OpMemberDecorate %main_out 0 Offset 0 %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %_ptr_Output_v4float = OpTypePointer Output %v4float %5 = OpConstantNull %v4float %x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5 %uint = OpTypeInt 32 0 %uint_1 = OpConstant %uint 1 %_arr_float_uint_1 = OpTypeArray %float %uint_1 %buf0 = OpTypeStruct %_arr_float_uint_1 %_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0 %x_5 = OpVariable %_ptr_Uniform_buf0 Uniform %_ptr_Private_v4float = OpTypePointer Private %v4float %x_GLF_color = OpVariable %_ptr_Private_v4float Private %5 %int = OpTypeInt 32 1 %uint_2 = OpConstant %uint 2 %_arr_int_uint_2 = OpTypeArray %int %uint_2 %buf1 = OpTypeStruct %_arr_int_uint_2 %_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1 %x_7 = OpVariable %_ptr_Uniform_buf1 Uniform %void = OpTypeVoid %20 = OpTypeFunction %void %uint_0 = OpConstant %uint 0 %int_0 = OpConstant %int 0 %_ptr_Uniform_float = OpTypePointer Uniform %float %int_10000 = OpConstant %int 10000 %bool = OpTypeBool %int_1 = OpConstant %int 1 %_ptr_Uniform_int = OpTypePointer Uniform %int %main_out = OpTypeStruct %v4float %67 = OpTypeFunction %main_out %main_1 = OpFunction %void None %20 %23 = OpLabel %27 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0 %28 = OpLoad %float %27 %29 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0 %30 = OpLoad %float %29 %31 = OpExtInst %float %32 Ldexp %28 %int_10000 %34 = OpFOrdEqual %bool %31 %30 OpSelectionMerge %36 None OpBranchConditional %34 %37 %38 %37 = OpLabel %41 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1 %42 = OpLoad %int %41 %43 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0 %44 = OpLoad %int %43 %45 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0 %46 = OpLoad %int %45 %47 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1 %48 = OpLoad %int %47 %49 = OpConvertSToF %float %42 %50 = OpConvertSToF %float %44 %51 = OpConvertSToF %float %46 %52 = OpConvertSToF %float %48 %53 = OpCompositeConstruct %v4float %49 %50 %51 %52 OpStore %x_GLF_color %53 OpBranch %36 %38 = OpLabel %54 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1 %55 = OpLoad %int %54 %56 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0 %57 = OpLoad %int %56 %58 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0 %59 = OpLoad %int %58 %60 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1 %61 = OpLoad %int %60 %62 = OpConvertSToF %float %55 %63 = OpConvertSToF %float %57 %64 = OpConvertSToF %float %59 %65 = OpConvertSToF %float %61 %66 = OpCompositeConstruct %v4float %62 %63 %64 %65 OpStore %x_GLF_color %66 OpBranch %36 %36 = OpLabel OpReturn OpFunctionEnd %main_inner = OpFunction %main_out None %67 %70 = OpLabel %71 = OpFunctionCall %void %main_1 %72 = OpLoad %v4float %x_GLF_color %73 = OpCompositeConstruct %main_out %72 OpReturnValue %73 OpFunctionEnd %main = OpFunction %void None %20 %75 = OpLabel %76 = OpFunctionCall %main_out %main_inner %77 = OpCompositeExtract %v4float %76 0 OpStore %x_GLF_color_1_1 %77 OpReturn OpFunctionEnd