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