• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1OpCapability Shader
2%1 = OpExtInstImport "GLSL.std.450"
3OpMemoryModel Logical GLSL450
4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5OpExecutionMode %_entrypoint_v OriginUpperLeft
6OpName %sk_FragColor "sk_FragColor"
7OpName %sk_Clockwise "sk_Clockwise"
8OpName %_UniformBuffer "_UniformBuffer"
9OpMemberName %_UniformBuffer 0 "testInputs"
10OpMemberName %_UniformBuffer 1 "colorGreen"
11OpMemberName %_UniformBuffer 2 "colorRed"
12OpMemberName %_UniformBuffer 3 "colorWhite"
13OpName %_entrypoint_v "_entrypoint_v"
14OpName %main "main"
15OpName %expectedA "expectedA"
16OpName %expectedB "expectedB"
17OpDecorate %sk_FragColor RelaxedPrecision
18OpDecorate %sk_FragColor Location 0
19OpDecorate %sk_FragColor Index 0
20OpDecorate %sk_Clockwise BuiltIn FrontFacing
21OpMemberDecorate %_UniformBuffer 0 Offset 0
22OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
23OpMemberDecorate %_UniformBuffer 1 Offset 16
24OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
25OpMemberDecorate %_UniformBuffer 2 Offset 32
26OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
27OpMemberDecorate %_UniformBuffer 3 Offset 48
28OpMemberDecorate %_UniformBuffer 3 RelaxedPrecision
29OpDecorate %_UniformBuffer Block
30OpDecorate %10 Binding 0
31OpDecorate %10 DescriptorSet 0
32OpDecorate %expectedA RelaxedPrecision
33OpDecorate %30 RelaxedPrecision
34OpDecorate %expectedB RelaxedPrecision
35OpDecorate %33 RelaxedPrecision
36OpDecorate %40 RelaxedPrecision
37OpDecorate %41 RelaxedPrecision
38OpDecorate %42 RelaxedPrecision
39OpDecorate %43 RelaxedPrecision
40OpDecorate %49 RelaxedPrecision
41OpDecorate %50 RelaxedPrecision
42OpDecorate %51 RelaxedPrecision
43OpDecorate %52 RelaxedPrecision
44OpDecorate %53 RelaxedPrecision
45OpDecorate %62 RelaxedPrecision
46OpDecorate %63 RelaxedPrecision
47OpDecorate %65 RelaxedPrecision
48OpDecorate %66 RelaxedPrecision
49OpDecorate %67 RelaxedPrecision
50OpDecorate %76 RelaxedPrecision
51OpDecorate %77 RelaxedPrecision
52OpDecorate %78 RelaxedPrecision
53OpDecorate %85 RelaxedPrecision
54OpDecorate %86 RelaxedPrecision
55OpDecorate %91 RelaxedPrecision
56OpDecorate %92 RelaxedPrecision
57OpDecorate %93 RelaxedPrecision
58OpDecorate %99 RelaxedPrecision
59OpDecorate %100 RelaxedPrecision
60OpDecorate %101 RelaxedPrecision
61OpDecorate %107 RelaxedPrecision
62OpDecorate %115 RelaxedPrecision
63OpDecorate %116 RelaxedPrecision
64OpDecorate %119 RelaxedPrecision
65OpDecorate %120 RelaxedPrecision
66OpDecorate %121 RelaxedPrecision
67OpDecorate %122 RelaxedPrecision
68OpDecorate %129 RelaxedPrecision
69OpDecorate %130 RelaxedPrecision
70OpDecorate %132 RelaxedPrecision
71OpDecorate %133 RelaxedPrecision
72OpDecorate %134 RelaxedPrecision
73OpDecorate %135 RelaxedPrecision
74OpDecorate %143 RelaxedPrecision
75OpDecorate %144 RelaxedPrecision
76OpDecorate %146 RelaxedPrecision
77OpDecorate %147 RelaxedPrecision
78OpDecorate %148 RelaxedPrecision
79OpDecorate %149 RelaxedPrecision
80OpDecorate %157 RelaxedPrecision
81OpDecorate %159 RelaxedPrecision
82OpDecorate %160 RelaxedPrecision
83OpDecorate %166 RelaxedPrecision
84OpDecorate %167 RelaxedPrecision
85OpDecorate %172 RelaxedPrecision
86OpDecorate %173 RelaxedPrecision
87OpDecorate %174 RelaxedPrecision
88OpDecorate %180 RelaxedPrecision
89OpDecorate %181 RelaxedPrecision
90OpDecorate %182 RelaxedPrecision
91OpDecorate %188 RelaxedPrecision
92OpDecorate %198 RelaxedPrecision
93OpDecorate %201 RelaxedPrecision
94OpDecorate %202 RelaxedPrecision
95%float = OpTypeFloat 32
96%v4float = OpTypeVector %float 4
97%_ptr_Output_v4float = OpTypePointer Output %v4float
98%sk_FragColor = OpVariable %_ptr_Output_v4float Output
99%bool = OpTypeBool
100%_ptr_Input_bool = OpTypePointer Input %bool
101%sk_Clockwise = OpVariable %_ptr_Input_bool Input
102%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float %v4float
103%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
104%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
105%void = OpTypeVoid
106%15 = OpTypeFunction %void
107%v2float = OpTypeVector %float 2
108%float_0 = OpConstant %float 0
109%19 = OpConstantComposite %v2float %float_0 %float_0
110%_ptr_Function_v2float = OpTypePointer Function %v2float
111%23 = OpTypeFunction %v4float %_ptr_Function_v2float
112%_ptr_Function_v4float = OpTypePointer Function %v4float
113%float_0_75 = OpConstant %float 0.75
114%float_0_25 = OpConstant %float 0.25
115%30 = OpConstantComposite %v4float %float_0_75 %float_0 %float_0_75 %float_0_25
116%float_1 = OpConstant %float 1
117%33 = OpConstantComposite %v4float %float_0_25 %float_0 %float_0_75 %float_1
118%false = OpConstantFalse %bool
119%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
120%int = OpTypeInt 32 1
121%int_0 = OpConstant %int 0
122%v2bool = OpTypeVector %bool 2
123%v3float = OpTypeVector %float 3
124%v3bool = OpTypeVector %bool 3
125%v4bool = OpTypeVector %bool 4
126%91 = OpConstantComposite %v2float %float_0_75 %float_0
127%99 = OpConstantComposite %v3float %float_0_75 %float_0 %float_0_75
128%int_3 = OpConstant %int 3
129%172 = OpConstantComposite %v2float %float_0_25 %float_0
130%180 = OpConstantComposite %v3float %float_0_25 %float_0 %float_0_75
131%int_1 = OpConstant %int 1
132%int_2 = OpConstant %int 2
133%_entrypoint_v = OpFunction %void None %15
134%16 = OpLabel
135%20 = OpVariable %_ptr_Function_v2float Function
136OpStore %20 %19
137%22 = OpFunctionCall %v4float %main %20
138OpStore %sk_FragColor %22
139OpReturn
140OpFunctionEnd
141%main = OpFunction %v4float None %23
142%24 = OpFunctionParameter %_ptr_Function_v2float
143%25 = OpLabel
144%expectedA = OpVariable %_ptr_Function_v4float Function
145%expectedB = OpVariable %_ptr_Function_v4float Function
146%192 = OpVariable %_ptr_Function_v4float Function
147OpStore %expectedA %30
148OpStore %expectedB %33
149%36 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
150%40 = OpLoad %v4float %36
151%41 = OpCompositeExtract %float %40 0
152%35 = OpFMod %float %41 %float_1
153%42 = OpLoad %v4float %expectedA
154%43 = OpCompositeExtract %float %42 0
155%44 = OpFOrdEqual %bool %35 %43
156OpSelectionMerge %46 None
157OpBranchConditional %44 %45 %46
158%45 = OpLabel
159%48 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
160%49 = OpLoad %v4float %48
161%50 = OpVectorShuffle %v2float %49 %49 0 1
162%51 = OpCompositeConstruct %v2float %float_1 %float_1
163%47 = OpFMod %v2float %50 %51
164%52 = OpLoad %v4float %expectedA
165%53 = OpVectorShuffle %v2float %52 %52 0 1
166%54 = OpFOrdEqual %v2bool %47 %53
167%56 = OpAll %bool %54
168OpBranch %46
169%46 = OpLabel
170%57 = OpPhi %bool %false %25 %56 %45
171OpSelectionMerge %59 None
172OpBranchConditional %57 %58 %59
173%58 = OpLabel
174%61 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
175%62 = OpLoad %v4float %61
176%63 = OpVectorShuffle %v3float %62 %62 0 1 2
177%65 = OpCompositeConstruct %v3float %float_1 %float_1 %float_1
178%60 = OpFMod %v3float %63 %65
179%66 = OpLoad %v4float %expectedA
180%67 = OpVectorShuffle %v3float %66 %66 0 1 2
181%68 = OpFOrdEqual %v3bool %60 %67
182%70 = OpAll %bool %68
183OpBranch %59
184%59 = OpLabel
185%71 = OpPhi %bool %false %46 %70 %58
186OpSelectionMerge %73 None
187OpBranchConditional %71 %72 %73
188%72 = OpLabel
189%75 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
190%76 = OpLoad %v4float %75
191%77 = OpCompositeConstruct %v4float %float_1 %float_1 %float_1 %float_1
192%74 = OpFMod %v4float %76 %77
193%78 = OpLoad %v4float %expectedA
194%79 = OpFOrdEqual %v4bool %74 %78
195%81 = OpAll %bool %79
196OpBranch %73
197%73 = OpLabel
198%82 = OpPhi %bool %false %59 %81 %72
199OpSelectionMerge %84 None
200OpBranchConditional %82 %83 %84
201%83 = OpLabel
202%85 = OpLoad %v4float %expectedA
203%86 = OpCompositeExtract %float %85 0
204%87 = OpFOrdEqual %bool %float_0_75 %86
205OpBranch %84
206%84 = OpLabel
207%88 = OpPhi %bool %false %73 %87 %83
208OpSelectionMerge %90 None
209OpBranchConditional %88 %89 %90
210%89 = OpLabel
211%92 = OpLoad %v4float %expectedA
212%93 = OpVectorShuffle %v2float %92 %92 0 1
213%94 = OpFOrdEqual %v2bool %91 %93
214%95 = OpAll %bool %94
215OpBranch %90
216%90 = OpLabel
217%96 = OpPhi %bool %false %84 %95 %89
218OpSelectionMerge %98 None
219OpBranchConditional %96 %97 %98
220%97 = OpLabel
221%100 = OpLoad %v4float %expectedA
222%101 = OpVectorShuffle %v3float %100 %100 0 1 2
223%102 = OpFOrdEqual %v3bool %99 %101
224%103 = OpAll %bool %102
225OpBranch %98
226%98 = OpLabel
227%104 = OpPhi %bool %false %90 %103 %97
228OpSelectionMerge %106 None
229OpBranchConditional %104 %105 %106
230%105 = OpLabel
231%107 = OpLoad %v4float %expectedA
232%108 = OpFOrdEqual %v4bool %30 %107
233%109 = OpAll %bool %108
234OpBranch %106
235%106 = OpLabel
236%110 = OpPhi %bool %false %98 %109 %105
237OpSelectionMerge %112 None
238OpBranchConditional %110 %111 %112
239%111 = OpLabel
240%114 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
241%115 = OpLoad %v4float %114
242%116 = OpCompositeExtract %float %115 0
243%117 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
244%119 = OpLoad %v4float %117
245%120 = OpCompositeExtract %float %119 0
246%113 = OpFMod %float %116 %120
247%121 = OpLoad %v4float %expectedA
248%122 = OpCompositeExtract %float %121 0
249%123 = OpFOrdEqual %bool %113 %122
250OpBranch %112
251%112 = OpLabel
252%124 = OpPhi %bool %false %106 %123 %111
253OpSelectionMerge %126 None
254OpBranchConditional %124 %125 %126
255%125 = OpLabel
256%128 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
257%129 = OpLoad %v4float %128
258%130 = OpVectorShuffle %v2float %129 %129 0 1
259%131 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
260%132 = OpLoad %v4float %131
261%133 = OpVectorShuffle %v2float %132 %132 0 1
262%127 = OpFMod %v2float %130 %133
263%134 = OpLoad %v4float %expectedA
264%135 = OpVectorShuffle %v2float %134 %134 0 1
265%136 = OpFOrdEqual %v2bool %127 %135
266%137 = OpAll %bool %136
267OpBranch %126
268%126 = OpLabel
269%138 = OpPhi %bool %false %112 %137 %125
270OpSelectionMerge %140 None
271OpBranchConditional %138 %139 %140
272%139 = OpLabel
273%142 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
274%143 = OpLoad %v4float %142
275%144 = OpVectorShuffle %v3float %143 %143 0 1 2
276%145 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
277%146 = OpLoad %v4float %145
278%147 = OpVectorShuffle %v3float %146 %146 0 1 2
279%141 = OpFMod %v3float %144 %147
280%148 = OpLoad %v4float %expectedA
281%149 = OpVectorShuffle %v3float %148 %148 0 1 2
282%150 = OpFOrdEqual %v3bool %141 %149
283%151 = OpAll %bool %150
284OpBranch %140
285%140 = OpLabel
286%152 = OpPhi %bool %false %126 %151 %139
287OpSelectionMerge %154 None
288OpBranchConditional %152 %153 %154
289%153 = OpLabel
290%156 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
291%157 = OpLoad %v4float %156
292%158 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
293%159 = OpLoad %v4float %158
294%155 = OpFMod %v4float %157 %159
295%160 = OpLoad %v4float %expectedA
296%161 = OpFOrdEqual %v4bool %155 %160
297%162 = OpAll %bool %161
298OpBranch %154
299%154 = OpLabel
300%163 = OpPhi %bool %false %140 %162 %153
301OpSelectionMerge %165 None
302OpBranchConditional %163 %164 %165
303%164 = OpLabel
304%166 = OpLoad %v4float %expectedB
305%167 = OpCompositeExtract %float %166 0
306%168 = OpFOrdEqual %bool %float_0_25 %167
307OpBranch %165
308%165 = OpLabel
309%169 = OpPhi %bool %false %154 %168 %164
310OpSelectionMerge %171 None
311OpBranchConditional %169 %170 %171
312%170 = OpLabel
313%173 = OpLoad %v4float %expectedB
314%174 = OpVectorShuffle %v2float %173 %173 0 1
315%175 = OpFOrdEqual %v2bool %172 %174
316%176 = OpAll %bool %175
317OpBranch %171
318%171 = OpLabel
319%177 = OpPhi %bool %false %165 %176 %170
320OpSelectionMerge %179 None
321OpBranchConditional %177 %178 %179
322%178 = OpLabel
323%181 = OpLoad %v4float %expectedB
324%182 = OpVectorShuffle %v3float %181 %181 0 1 2
325%183 = OpFOrdEqual %v3bool %180 %182
326%184 = OpAll %bool %183
327OpBranch %179
328%179 = OpLabel
329%185 = OpPhi %bool %false %171 %184 %178
330OpSelectionMerge %187 None
331OpBranchConditional %185 %186 %187
332%186 = OpLabel
333%188 = OpLoad %v4float %expectedB
334%189 = OpFOrdEqual %v4bool %33 %188
335%190 = OpAll %bool %189
336OpBranch %187
337%187 = OpLabel
338%191 = OpPhi %bool %false %179 %190 %186
339OpSelectionMerge %195 None
340OpBranchConditional %191 %193 %194
341%193 = OpLabel
342%196 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
343%198 = OpLoad %v4float %196
344OpStore %192 %198
345OpBranch %195
346%194 = OpLabel
347%199 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
348%201 = OpLoad %v4float %199
349OpStore %192 %201
350OpBranch %195
351%195 = OpLabel
352%202 = OpLoad %v4float %192
353OpReturnValue %202
354OpFunctionEnd
355