1cb93a386Sopenharmony_ciOpCapability Shader
2cb93a386Sopenharmony_ci%1 = OpExtInstImport "GLSL.std.450"
3cb93a386Sopenharmony_ciOpMemoryModel Logical GLSL450
4cb93a386Sopenharmony_ciOpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5cb93a386Sopenharmony_ciOpExecutionMode %_entrypoint_v OriginUpperLeft
6cb93a386Sopenharmony_ciOpName %sk_FragColor "sk_FragColor"
7cb93a386Sopenharmony_ciOpName %sk_Clockwise "sk_Clockwise"
8cb93a386Sopenharmony_ciOpName %_entrypoint_v "_entrypoint_v"
9cb93a386Sopenharmony_ciOpName %main "main"
10cb93a386Sopenharmony_ciOpName %result "result"
11cb93a386Sopenharmony_ciOpName %a "a"
12cb93a386Sopenharmony_ciOpName %b "b"
13cb93a386Sopenharmony_ciOpName %c "c"
14cb93a386Sopenharmony_ciOpName %d "d"
15cb93a386Sopenharmony_ciOpName %e "e"
16cb93a386Sopenharmony_ciOpName %f "f"
17cb93a386Sopenharmony_ciOpDecorate %sk_FragColor RelaxedPrecision
18cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Location 0
19cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Index 0
20cb93a386Sopenharmony_ciOpDecorate %sk_Clockwise BuiltIn FrontFacing
21cb93a386Sopenharmony_ciOpDecorate %result RelaxedPrecision
22cb93a386Sopenharmony_ciOpDecorate %25 RelaxedPrecision
23cb93a386Sopenharmony_ciOpDecorate %a RelaxedPrecision
24cb93a386Sopenharmony_ciOpDecorate %b RelaxedPrecision
25cb93a386Sopenharmony_ciOpDecorate %35 RelaxedPrecision
26cb93a386Sopenharmony_ciOpDecorate %40 RelaxedPrecision
27cb93a386Sopenharmony_ciOpDecorate %46 RelaxedPrecision
28cb93a386Sopenharmony_ciOpDecorate %47 RelaxedPrecision
29cb93a386Sopenharmony_ciOpDecorate %48 RelaxedPrecision
30cb93a386Sopenharmony_ciOpDecorate %51 RelaxedPrecision
31cb93a386Sopenharmony_ciOpDecorate %52 RelaxedPrecision
32cb93a386Sopenharmony_ciOpDecorate %53 RelaxedPrecision
33cb93a386Sopenharmony_ciOpDecorate %55 RelaxedPrecision
34cb93a386Sopenharmony_ciOpDecorate %56 RelaxedPrecision
35cb93a386Sopenharmony_ciOpDecorate %57 RelaxedPrecision
36cb93a386Sopenharmony_ciOpDecorate %58 RelaxedPrecision
37cb93a386Sopenharmony_ciOpDecorate %71 RelaxedPrecision
38cb93a386Sopenharmony_ciOpDecorate %72 RelaxedPrecision
39cb93a386Sopenharmony_ciOpDecorate %_arr_float_int_2 ArrayStride 16
40cb93a386Sopenharmony_ciOpDecorate %_arr_float_int_4 ArrayStride 16
41cb93a386Sopenharmony_ciOpDecorate %118 RelaxedPrecision
42cb93a386Sopenharmony_ci%float = OpTypeFloat 32
43cb93a386Sopenharmony_ci%v4float = OpTypeVector %float 4
44cb93a386Sopenharmony_ci%_ptr_Output_v4float = OpTypePointer Output %v4float
45cb93a386Sopenharmony_ci%sk_FragColor = OpVariable %_ptr_Output_v4float Output
46cb93a386Sopenharmony_ci%bool = OpTypeBool
47cb93a386Sopenharmony_ci%_ptr_Input_bool = OpTypePointer Input %bool
48cb93a386Sopenharmony_ci%sk_Clockwise = OpVariable %_ptr_Input_bool Input
49cb93a386Sopenharmony_ci%void = OpTypeVoid
50cb93a386Sopenharmony_ci%12 = OpTypeFunction %void
51cb93a386Sopenharmony_ci%v2float = OpTypeVector %float 2
52cb93a386Sopenharmony_ci%float_0 = OpConstant %float 0
53cb93a386Sopenharmony_ci%16 = OpConstantComposite %v2float %float_0 %float_0
54cb93a386Sopenharmony_ci%_ptr_Function_v2float = OpTypePointer Function %v2float
55cb93a386Sopenharmony_ci%20 = OpTypeFunction %v4float %_ptr_Function_v2float
56cb93a386Sopenharmony_ci%_ptr_Function_v4float = OpTypePointer Function %v4float
57cb93a386Sopenharmony_ci%25 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
58cb93a386Sopenharmony_ci%_ptr_Function_float = OpTypePointer Function %float
59cb93a386Sopenharmony_ci%false = OpConstantFalse %bool
60cb93a386Sopenharmony_ci%float_10 = OpConstant %float 10
61cb93a386Sopenharmony_ci%int = OpTypeInt 32 1
62cb93a386Sopenharmony_ci%int_0 = OpConstant %int 0
63cb93a386Sopenharmony_ci%int_1 = OpConstant %int 1
64cb93a386Sopenharmony_ci%float_1 = OpConstant %float 1
65cb93a386Sopenharmony_ci%_ptr_Function_int = OpTypePointer Function %int
66cb93a386Sopenharmony_ci%int_10 = OpConstant %int 10
67cb93a386Sopenharmony_ci%int_2 = OpConstant %int 2
68cb93a386Sopenharmony_ci%_arr_float_int_2 = OpTypeArray %float %int_2
69cb93a386Sopenharmony_ci%_ptr_Function__arr_float_int_2 = OpTypePointer Function %_arr_float_int_2
70cb93a386Sopenharmony_ci%int_4 = OpConstant %int 4
71cb93a386Sopenharmony_ci%_arr_float_int_4 = OpTypeArray %float %int_4
72cb93a386Sopenharmony_ci%_ptr_Function__arr_float_int_4 = OpTypePointer Function %_arr_float_int_4
73cb93a386Sopenharmony_ci%float_2 = OpConstant %float 2
74cb93a386Sopenharmony_ci%float_3 = OpConstant %float 3
75cb93a386Sopenharmony_ci%float_4 = OpConstant %float 4
76cb93a386Sopenharmony_ci%float_9 = OpConstant %float 9
77cb93a386Sopenharmony_ci%int_3 = OpConstant %int 3
78cb93a386Sopenharmony_ci%_entrypoint_v = OpFunction %void None %12
79cb93a386Sopenharmony_ci%13 = OpLabel
80cb93a386Sopenharmony_ci%17 = OpVariable %_ptr_Function_v2float Function
81cb93a386Sopenharmony_ciOpStore %17 %16
82cb93a386Sopenharmony_ci%19 = OpFunctionCall %v4float %main %17
83cb93a386Sopenharmony_ciOpStore %sk_FragColor %19
84cb93a386Sopenharmony_ciOpReturn
85cb93a386Sopenharmony_ciOpFunctionEnd
86cb93a386Sopenharmony_ci%main = OpFunction %v4float None %20
87cb93a386Sopenharmony_ci%21 = OpFunctionParameter %_ptr_Function_v2float
88cb93a386Sopenharmony_ci%22 = OpLabel
89cb93a386Sopenharmony_ci%result = OpVariable %_ptr_Function_v4float Function
90cb93a386Sopenharmony_ci%a = OpVariable %_ptr_Function_float Function
91cb93a386Sopenharmony_ci%b = OpVariable %_ptr_Function_float Function
92cb93a386Sopenharmony_ci%c = OpVariable %_ptr_Function_int Function
93cb93a386Sopenharmony_ci%d = OpVariable %_ptr_Function__arr_float_int_2 Function
94cb93a386Sopenharmony_ci%e = OpVariable %_ptr_Function__arr_float_int_4 Function
95cb93a386Sopenharmony_ci%f = OpVariable %_ptr_Function_float Function
96cb93a386Sopenharmony_ciOpStore %result %25
97cb93a386Sopenharmony_ciOpStore %a %float_0
98cb93a386Sopenharmony_ciOpStore %b %float_0
99cb93a386Sopenharmony_ciOpBranch %29
100cb93a386Sopenharmony_ci%29 = OpLabel
101cb93a386Sopenharmony_ciOpLoopMerge %33 %32 None
102cb93a386Sopenharmony_ciOpBranch %30
103cb93a386Sopenharmony_ci%30 = OpLabel
104cb93a386Sopenharmony_ci%35 = OpLoad %float %a
105cb93a386Sopenharmony_ci%37 = OpFOrdLessThan %bool %35 %float_10
106cb93a386Sopenharmony_ciOpSelectionMerge %39 None
107cb93a386Sopenharmony_ciOpBranchConditional %37 %38 %39
108cb93a386Sopenharmony_ci%38 = OpLabel
109cb93a386Sopenharmony_ci%40 = OpLoad %float %b
110cb93a386Sopenharmony_ci%41 = OpFOrdLessThan %bool %40 %float_10
111cb93a386Sopenharmony_ciOpBranch %39
112cb93a386Sopenharmony_ci%39 = OpLabel
113cb93a386Sopenharmony_ci%42 = OpPhi %bool %false %30 %41 %38
114cb93a386Sopenharmony_ciOpBranchConditional %42 %31 %33
115cb93a386Sopenharmony_ci%31 = OpLabel
116cb93a386Sopenharmony_ci%43 = OpAccessChain %_ptr_Function_float %result %int_0
117cb93a386Sopenharmony_ci%46 = OpLoad %float %43
118cb93a386Sopenharmony_ci%47 = OpLoad %float %a
119cb93a386Sopenharmony_ci%48 = OpFAdd %float %46 %47
120cb93a386Sopenharmony_ciOpStore %43 %48
121cb93a386Sopenharmony_ci%49 = OpAccessChain %_ptr_Function_float %result %int_1
122cb93a386Sopenharmony_ci%51 = OpLoad %float %49
123cb93a386Sopenharmony_ci%52 = OpLoad %float %b
124cb93a386Sopenharmony_ci%53 = OpFAdd %float %51 %52
125cb93a386Sopenharmony_ciOpStore %49 %53
126cb93a386Sopenharmony_ciOpBranch %32
127cb93a386Sopenharmony_ci%32 = OpLabel
128cb93a386Sopenharmony_ci%55 = OpLoad %float %a
129cb93a386Sopenharmony_ci%56 = OpFAdd %float %55 %float_1
130cb93a386Sopenharmony_ciOpStore %a %56
131cb93a386Sopenharmony_ci%57 = OpLoad %float %b
132cb93a386Sopenharmony_ci%58 = OpFAdd %float %57 %float_1
133cb93a386Sopenharmony_ciOpStore %b %58
134cb93a386Sopenharmony_ciOpBranch %29
135cb93a386Sopenharmony_ci%33 = OpLabel
136cb93a386Sopenharmony_ciOpStore %c %int_0
137cb93a386Sopenharmony_ciOpBranch %61
138cb93a386Sopenharmony_ci%61 = OpLabel
139cb93a386Sopenharmony_ciOpLoopMerge %65 %64 None
140cb93a386Sopenharmony_ciOpBranch %62
141cb93a386Sopenharmony_ci%62 = OpLabel
142cb93a386Sopenharmony_ci%66 = OpLoad %int %c
143cb93a386Sopenharmony_ci%68 = OpSLessThan %bool %66 %int_10
144cb93a386Sopenharmony_ciOpBranchConditional %68 %63 %65
145cb93a386Sopenharmony_ci%63 = OpLabel
146cb93a386Sopenharmony_ci%69 = OpAccessChain %_ptr_Function_float %result %int_2
147cb93a386Sopenharmony_ci%71 = OpLoad %float %69
148cb93a386Sopenharmony_ci%72 = OpFAdd %float %71 %float_1
149cb93a386Sopenharmony_ciOpStore %69 %72
150cb93a386Sopenharmony_ciOpBranch %64
151cb93a386Sopenharmony_ci%64 = OpLabel
152cb93a386Sopenharmony_ci%73 = OpLoad %int %c
153cb93a386Sopenharmony_ci%74 = OpIAdd %int %73 %int_1
154cb93a386Sopenharmony_ciOpStore %c %74
155cb93a386Sopenharmony_ciOpBranch %61
156cb93a386Sopenharmony_ci%65 = OpLabel
157cb93a386Sopenharmony_ci%78 = OpCompositeConstruct %_arr_float_int_2 %float_0 %float_10
158cb93a386Sopenharmony_ciOpStore %d %78
159cb93a386Sopenharmony_ci%86 = OpCompositeConstruct %_arr_float_int_4 %float_1 %float_2 %float_3 %float_4
160cb93a386Sopenharmony_ciOpStore %e %86
161cb93a386Sopenharmony_ciOpStore %f %float_9
162cb93a386Sopenharmony_ciOpBranch %89
163cb93a386Sopenharmony_ci%89 = OpLabel
164cb93a386Sopenharmony_ciOpLoopMerge %93 %92 None
165cb93a386Sopenharmony_ciOpBranch %90
166cb93a386Sopenharmony_ci%90 = OpLabel
167cb93a386Sopenharmony_ci%94 = OpAccessChain %_ptr_Function_float %d %int_0
168cb93a386Sopenharmony_ci%95 = OpLoad %float %94
169cb93a386Sopenharmony_ci%96 = OpAccessChain %_ptr_Function_float %d %int_1
170cb93a386Sopenharmony_ci%97 = OpLoad %float %96
171cb93a386Sopenharmony_ci%98 = OpFOrdLessThan %bool %95 %97
172cb93a386Sopenharmony_ciOpBranchConditional %98 %91 %93
173cb93a386Sopenharmony_ci%91 = OpLabel
174cb93a386Sopenharmony_ci%99 = OpAccessChain %_ptr_Function_float %e %int_0
175cb93a386Sopenharmony_ci%100 = OpLoad %float %99
176cb93a386Sopenharmony_ci%101 = OpLoad %float %f
177cb93a386Sopenharmony_ci%102 = OpFMul %float %100 %101
178cb93a386Sopenharmony_ci%103 = OpAccessChain %_ptr_Function_float %result %int_3
179cb93a386Sopenharmony_ciOpStore %103 %102
180cb93a386Sopenharmony_ciOpBranch %92
181cb93a386Sopenharmony_ci%92 = OpLabel
182cb93a386Sopenharmony_ci%105 = OpAccessChain %_ptr_Function_float %d %int_0
183cb93a386Sopenharmony_ci%106 = OpLoad %float %105
184cb93a386Sopenharmony_ci%107 = OpFAdd %float %106 %float_1
185cb93a386Sopenharmony_ciOpStore %105 %107
186cb93a386Sopenharmony_ciOpBranch %89
187cb93a386Sopenharmony_ci%93 = OpLabel
188cb93a386Sopenharmony_ciOpBranch %108
189cb93a386Sopenharmony_ci%108 = OpLabel
190cb93a386Sopenharmony_ciOpLoopMerge %112 %111 None
191cb93a386Sopenharmony_ciOpBranch %109
192cb93a386Sopenharmony_ci%109 = OpLabel
193cb93a386Sopenharmony_ciOpBranch %110
194cb93a386Sopenharmony_ci%110 = OpLabel
195cb93a386Sopenharmony_ciOpBranch %112
196cb93a386Sopenharmony_ci%111 = OpLabel
197cb93a386Sopenharmony_ciOpBranch %108
198cb93a386Sopenharmony_ci%112 = OpLabel
199cb93a386Sopenharmony_ciOpBranch %113
200cb93a386Sopenharmony_ci%113 = OpLabel
201cb93a386Sopenharmony_ciOpLoopMerge %117 %116 None
202cb93a386Sopenharmony_ciOpBranch %114
203cb93a386Sopenharmony_ci%114 = OpLabel
204cb93a386Sopenharmony_ciOpBranch %115
205cb93a386Sopenharmony_ci%115 = OpLabel
206cb93a386Sopenharmony_ciOpBranch %117
207cb93a386Sopenharmony_ci%116 = OpLabel
208cb93a386Sopenharmony_ciOpBranch %113
209cb93a386Sopenharmony_ci%117 = OpLabel
210cb93a386Sopenharmony_ci%118 = OpLoad %v4float %result
211cb93a386Sopenharmony_ciOpReturnValue %118
212cb93a386Sopenharmony_ciOpFunctionEnd
213