1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %main "main" %sk_FragColor %sk_Clockwise 5OpExecutionMode %main OriginUpperLeft 6OpName %testBlock "testBlock" 7OpMemberName %testBlock 0 "x" 8OpMemberName %testBlock 1 "w" 9OpMemberName %testBlock 2 "y" 10OpMemberName %testBlock 3 "z" 11OpName %sk_FragColor "sk_FragColor" 12OpName %sk_Clockwise "sk_Clockwise" 13OpName %main "main" 14OpDecorate %_arr_float_int_2 ArrayStride 16 15OpMemberDecorate %testBlock 0 Offset 0 16OpMemberDecorate %testBlock 0 RelaxedPrecision 17OpMemberDecorate %testBlock 1 Offset 4 18OpMemberDecorate %testBlock 2 Offset 16 19OpMemberDecorate %testBlock 2 RelaxedPrecision 20OpMemberDecorate %testBlock 3 Offset 48 21OpMemberDecorate %testBlock 3 ColMajor 22OpMemberDecorate %testBlock 3 MatrixStride 16 23OpMemberDecorate %testBlock 3 RelaxedPrecision 24OpDecorate %testBlock Block 25OpDecorate %3 Binding 0 26OpDecorate %3 DescriptorSet 0 27OpDecorate %sk_FragColor RelaxedPrecision 28OpDecorate %sk_FragColor Location 0 29OpDecorate %sk_FragColor Index 0 30OpDecorate %sk_Clockwise BuiltIn FrontFacing 31OpDecorate %24 RelaxedPrecision 32OpDecorate %26 RelaxedPrecision 33OpDecorate %29 RelaxedPrecision 34OpDecorate %31 RelaxedPrecision 35%float = OpTypeFloat 32 36%int = OpTypeInt 32 1 37%int_2 = OpConstant %int 2 38%_arr_float_int_2 = OpTypeArray %float %int_2 39%v3float = OpTypeVector %float 3 40%mat3v3float = OpTypeMatrix %v3float 3 41%testBlock = OpTypeStruct %float %int %_arr_float_int_2 %mat3v3float 42%_ptr_Uniform_testBlock = OpTypePointer Uniform %testBlock 43%3 = OpVariable %_ptr_Uniform_testBlock Uniform 44%v4float = OpTypeVector %float 4 45%_ptr_Output_v4float = OpTypePointer Output %v4float 46%sk_FragColor = OpVariable %_ptr_Output_v4float Output 47%bool = OpTypeBool 48%_ptr_Input_bool = OpTypePointer Input %bool 49%sk_Clockwise = OpVariable %_ptr_Input_bool Input 50%void = OpTypeVoid 51%19 = OpTypeFunction %void 52%int_0 = OpConstant %int 0 53%_ptr_Uniform_float = OpTypePointer Uniform %float 54%int_1 = OpConstant %int 1 55%float_0 = OpConstant %float 0 56%main = OpFunction %void None %19 57%20 = OpLabel 58%22 = OpAccessChain %_ptr_Uniform_float %3 %int_0 59%24 = OpLoad %float %22 60%25 = OpAccessChain %_ptr_Uniform_float %3 %int_2 %int_0 61%26 = OpLoad %float %25 62%28 = OpAccessChain %_ptr_Uniform_float %3 %int_2 %int_1 63%29 = OpLoad %float %28 64%31 = OpCompositeConstruct %v4float %24 %26 %29 %float_0 65OpStore %sk_FragColor %31 66OpReturn 67OpFunctionEnd 68