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 %sk_FragColor "sk_FragColor"
7cb93a386Sopenharmony_ciOpName %sk_Clockwise "sk_Clockwise"
8cb93a386Sopenharmony_ciOpName %tex "tex"
9cb93a386Sopenharmony_ciOpName %main "main"
10cb93a386Sopenharmony_ciOpName %a "a"
11cb93a386Sopenharmony_ciOpName %b "b"
12cb93a386Sopenharmony_ciOpDecorate %sk_FragColor RelaxedPrecision
13cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Location 0
14cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Index 0
15cb93a386Sopenharmony_ciOpDecorate %sk_Clockwise BuiltIn FrontFacing
16cb93a386Sopenharmony_ciOpDecorate %tex RelaxedPrecision
17cb93a386Sopenharmony_ciOpDecorate %tex Binding 0
18cb93a386Sopenharmony_ciOpDecorate %tex DescriptorSet 0
19cb93a386Sopenharmony_ciOpDecorate %20 RelaxedPrecision
20cb93a386Sopenharmony_ciOpDecorate %26 RelaxedPrecision
21cb93a386Sopenharmony_ciOpDecorate %31 RelaxedPrecision
22cb93a386Sopenharmony_ciOpDecorate %32 RelaxedPrecision
23cb93a386Sopenharmony_ciOpDecorate %35 RelaxedPrecision
24cb93a386Sopenharmony_ciOpDecorate %36 RelaxedPrecision
25cb93a386Sopenharmony_ciOpDecorate %37 RelaxedPrecision
26cb93a386Sopenharmony_ci%float = OpTypeFloat 32
27cb93a386Sopenharmony_ci%v4float = OpTypeVector %float 4
28cb93a386Sopenharmony_ci%_ptr_Output_v4float = OpTypePointer Output %v4float
29cb93a386Sopenharmony_ci%sk_FragColor = OpVariable %_ptr_Output_v4float Output
30cb93a386Sopenharmony_ci%bool = OpTypeBool
31cb93a386Sopenharmony_ci%_ptr_Input_bool = OpTypePointer Input %bool
32cb93a386Sopenharmony_ci%sk_Clockwise = OpVariable %_ptr_Input_bool Input
33cb93a386Sopenharmony_ci%13 = OpTypeImage %float 2D 0 0 0 1 Unknown
34cb93a386Sopenharmony_ci%12 = OpTypeSampledImage %13
35cb93a386Sopenharmony_ci%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
36cb93a386Sopenharmony_ci%tex = OpVariable %_ptr_UniformConstant_12 UniformConstant
37cb93a386Sopenharmony_ci%void = OpTypeVoid
38cb93a386Sopenharmony_ci%15 = OpTypeFunction %void
39cb93a386Sopenharmony_ci%_ptr_Function_v4float = OpTypePointer Function %v4float
40cb93a386Sopenharmony_ci%v2float = OpTypeVector %float 2
41cb93a386Sopenharmony_ci%float_0 = OpConstant %float 0
42cb93a386Sopenharmony_ci%23 = OpConstantComposite %v2float %float_0 %float_0
43cb93a386Sopenharmony_ci%v3float = OpTypeVector %float 3
44cb93a386Sopenharmony_ci%28 = OpConstantComposite %v3float %float_0 %float_0 %float_0
45cb93a386Sopenharmony_ci%main = OpFunction %void None %15
46cb93a386Sopenharmony_ci%16 = OpLabel
47cb93a386Sopenharmony_ci%a = OpVariable %_ptr_Function_v4float Function
48cb93a386Sopenharmony_ci%b = OpVariable %_ptr_Function_v4float Function
49cb93a386Sopenharmony_ci%20 = OpLoad %12 %tex
50cb93a386Sopenharmony_ci%19 = OpImageSampleImplicitLod %v4float %20 %23
51cb93a386Sopenharmony_ciOpStore %a %19
52cb93a386Sopenharmony_ci%26 = OpLoad %12 %tex
53cb93a386Sopenharmony_ci%25 = OpImageSampleProjImplicitLod %v4float %26 %28
54cb93a386Sopenharmony_ciOpStore %b %25
55cb93a386Sopenharmony_ci%29 = OpLoad %v4float %a
56cb93a386Sopenharmony_ci%30 = OpVectorShuffle %v2float %29 %29 0 1
57cb93a386Sopenharmony_ci%31 = OpCompositeExtract %float %30 0
58cb93a386Sopenharmony_ci%32 = OpCompositeExtract %float %30 1
59cb93a386Sopenharmony_ci%33 = OpLoad %v4float %b
60cb93a386Sopenharmony_ci%34 = OpVectorShuffle %v2float %33 %33 2 3
61cb93a386Sopenharmony_ci%35 = OpCompositeExtract %float %34 0
62cb93a386Sopenharmony_ci%36 = OpCompositeExtract %float %34 1
63cb93a386Sopenharmony_ci%37 = OpCompositeConstruct %v4float %31 %32 %35 %36
64cb93a386Sopenharmony_ciOpStore %sk_FragColor %37
65cb93a386Sopenharmony_ciOpReturn
66cb93a386Sopenharmony_ciOpFunctionEnd
67