• 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 "colorGreen"
10OpMemberName %_UniformBuffer 1 "colorRed"
11OpName %_entrypoint_v "_entrypoint_v"
12OpName %main "main"
13OpName %v "v"
14OpName %result "result"
15OpDecorate %sk_FragColor RelaxedPrecision
16OpDecorate %sk_FragColor Location 0
17OpDecorate %sk_FragColor Index 0
18OpDecorate %sk_Clockwise BuiltIn FrontFacing
19OpMemberDecorate %_UniformBuffer 0 Offset 0
20OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
21OpMemberDecorate %_UniformBuffer 1 Offset 16
22OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
23OpDecorate %_UniformBuffer Block
24OpDecorate %10 Binding 0
25OpDecorate %10 DescriptorSet 0
26OpDecorate %33 RelaxedPrecision
27OpDecorate %34 RelaxedPrecision
28OpDecorate %38 RelaxedPrecision
29OpDecorate %42 RelaxedPrecision
30OpDecorate %49 RelaxedPrecision
31OpDecorate %52 RelaxedPrecision
32OpDecorate %55 RelaxedPrecision
33OpDecorate %62 RelaxedPrecision
34OpDecorate %67 RelaxedPrecision
35OpDecorate %69 RelaxedPrecision
36OpDecorate %72 RelaxedPrecision
37OpDecorate %75 RelaxedPrecision
38OpDecorate %80 RelaxedPrecision
39OpDecorate %83 RelaxedPrecision
40OpDecorate %86 RelaxedPrecision
41OpDecorate %87 RelaxedPrecision
42OpDecorate %93 RelaxedPrecision
43OpDecorate %97 RelaxedPrecision
44OpDecorate %100 RelaxedPrecision
45OpDecorate %105 RelaxedPrecision
46OpDecorate %107 RelaxedPrecision
47OpDecorate %112 RelaxedPrecision
48OpDecorate %114 RelaxedPrecision
49OpDecorate %117 RelaxedPrecision
50OpDecorate %119 RelaxedPrecision
51OpDecorate %122 RelaxedPrecision
52OpDecorate %125 RelaxedPrecision
53OpDecorate %131 RelaxedPrecision
54OpDecorate %136 RelaxedPrecision
55OpDecorate %138 RelaxedPrecision
56OpDecorate %141 RelaxedPrecision
57OpDecorate %144 RelaxedPrecision
58OpDecorate %149 RelaxedPrecision
59OpDecorate %152 RelaxedPrecision
60OpDecorate %156 RelaxedPrecision
61OpDecorate %163 RelaxedPrecision
62OpDecorate %166 RelaxedPrecision
63OpDecorate %167 RelaxedPrecision
64%float = OpTypeFloat 32
65%v4float = OpTypeVector %float 4
66%_ptr_Output_v4float = OpTypePointer Output %v4float
67%sk_FragColor = OpVariable %_ptr_Output_v4float Output
68%bool = OpTypeBool
69%_ptr_Input_bool = OpTypePointer Input %bool
70%sk_Clockwise = OpVariable %_ptr_Input_bool Input
71%_UniformBuffer = OpTypeStruct %v4float %v4float
72%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
73%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
74%void = OpTypeVoid
75%15 = OpTypeFunction %void
76%v2float = OpTypeVector %float 2
77%float_0 = OpConstant %float 0
78%19 = OpConstantComposite %v2float %float_0 %float_0
79%_ptr_Function_v2float = OpTypePointer Function %v2float
80%23 = OpTypeFunction %v4float %_ptr_Function_v2float
81%v4bool = OpTypeVector %bool 4
82%_ptr_Function_v4bool = OpTypePointer Function %v4bool
83%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
84%int = OpTypeInt 32 1
85%int_0 = OpConstant %int 0
86%true = OpConstantTrue %bool
87%v2bool = OpTypeVector %bool 2
88%false = OpConstantFalse %bool
89%v3bool = OpTypeVector %bool 3
90%_ptr_Function_v4float = OpTypePointer Function %v4float
91%int_1 = OpConstant %int 1
92%_entrypoint_v = OpFunction %void None %15
93%16 = OpLabel
94%20 = OpVariable %_ptr_Function_v2float Function
95OpStore %20 %19
96%22 = OpFunctionCall %v4float %main %20
97OpStore %sk_FragColor %22
98OpReturn
99OpFunctionEnd
100%main = OpFunction %v4float None %23
101%24 = OpFunctionParameter %_ptr_Function_v2float
102%25 = OpLabel
103%v = OpVariable %_ptr_Function_v4bool Function
104%result = OpVariable %_ptr_Function_v4bool Function
105%157 = OpVariable %_ptr_Function_v4float Function
106%29 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
107%33 = OpLoad %v4float %29
108%34 = OpCompositeExtract %float %33 1
109%35 = OpFUnordNotEqual %bool %34 %float_0
110%36 = OpCompositeConstruct %v4bool %35 %35 %35 %35
111OpStore %v %36
112%38 = OpLoad %v4bool %v
113%39 = OpCompositeExtract %bool %38 0
114%41 = OpCompositeConstruct %v4bool %39 %true %true %true
115OpStore %result %41
116%42 = OpLoad %v4bool %v
117%43 = OpVectorShuffle %v2bool %42 %42 0 1
118%45 = OpCompositeExtract %bool %43 0
119%46 = OpCompositeExtract %bool %43 1
120%48 = OpCompositeConstruct %v4bool %45 %46 %false %true
121OpStore %result %48
122%49 = OpLoad %v4bool %v
123%50 = OpCompositeExtract %bool %49 0
124%51 = OpCompositeConstruct %v4bool %50 %true %true %false
125OpStore %result %51
126%52 = OpLoad %v4bool %v
127%53 = OpCompositeExtract %bool %52 1
128%54 = OpCompositeConstruct %v4bool %false %53 %true %true
129OpStore %result %54
130%55 = OpLoad %v4bool %v
131%56 = OpVectorShuffle %v3bool %55 %55 0 1 2
132%58 = OpCompositeExtract %bool %56 0
133%59 = OpCompositeExtract %bool %56 1
134%60 = OpCompositeExtract %bool %56 2
135%61 = OpCompositeConstruct %v4bool %58 %59 %60 %true
136OpStore %result %61
137%62 = OpLoad %v4bool %v
138%63 = OpVectorShuffle %v2bool %62 %62 0 1
139%64 = OpCompositeExtract %bool %63 0
140%65 = OpCompositeExtract %bool %63 1
141%66 = OpCompositeConstruct %v4bool %64 %65 %true %true
142OpStore %result %66
143%67 = OpLoad %v4bool %v
144%68 = OpCompositeExtract %bool %67 0
145%69 = OpLoad %v4bool %v
146%70 = OpCompositeExtract %bool %69 2
147%71 = OpCompositeConstruct %v4bool %68 %false %70 %true
148OpStore %result %71
149%72 = OpLoad %v4bool %v
150%73 = OpCompositeExtract %bool %72 0
151%74 = OpCompositeConstruct %v4bool %73 %true %false %false
152OpStore %result %74
153%75 = OpLoad %v4bool %v
154%76 = OpVectorShuffle %v2bool %75 %75 1 2
155%77 = OpCompositeExtract %bool %76 0
156%78 = OpCompositeExtract %bool %76 1
157%79 = OpCompositeConstruct %v4bool %true %77 %78 %false
158OpStore %result %79
159%80 = OpLoad %v4bool %v
160%81 = OpCompositeExtract %bool %80 1
161%82 = OpCompositeConstruct %v4bool %false %81 %true %false
162OpStore %result %82
163%83 = OpLoad %v4bool %v
164%84 = OpCompositeExtract %bool %83 2
165%85 = OpCompositeConstruct %v4bool %true %true %84 %false
166OpStore %result %85
167%86 = OpLoad %v4bool %v
168OpStore %result %86
169%87 = OpLoad %v4bool %v
170%88 = OpVectorShuffle %v3bool %87 %87 0 1 2
171%89 = OpCompositeExtract %bool %88 0
172%90 = OpCompositeExtract %bool %88 1
173%91 = OpCompositeExtract %bool %88 2
174%92 = OpCompositeConstruct %v4bool %89 %90 %91 %true
175OpStore %result %92
176%93 = OpLoad %v4bool %v
177%94 = OpVectorShuffle %v2bool %93 %93 0 1
178%95 = OpCompositeExtract %bool %94 0
179%96 = OpCompositeExtract %bool %94 1
180%97 = OpLoad %v4bool %v
181%98 = OpCompositeExtract %bool %97 3
182%99 = OpCompositeConstruct %v4bool %95 %96 %false %98
183OpStore %result %99
184%100 = OpLoad %v4bool %v
185%101 = OpVectorShuffle %v2bool %100 %100 0 1
186%102 = OpCompositeExtract %bool %101 0
187%103 = OpCompositeExtract %bool %101 1
188%104 = OpCompositeConstruct %v4bool %102 %103 %true %false
189OpStore %result %104
190%105 = OpLoad %v4bool %v
191%106 = OpCompositeExtract %bool %105 0
192%107 = OpLoad %v4bool %v
193%108 = OpVectorShuffle %v2bool %107 %107 2 3
194%109 = OpCompositeExtract %bool %108 0
195%110 = OpCompositeExtract %bool %108 1
196%111 = OpCompositeConstruct %v4bool %106 %true %109 %110
197OpStore %result %111
198%112 = OpLoad %v4bool %v
199%113 = OpCompositeExtract %bool %112 0
200%114 = OpLoad %v4bool %v
201%115 = OpCompositeExtract %bool %114 2
202%116 = OpCompositeConstruct %v4bool %113 %false %115 %true
203OpStore %result %116
204%117 = OpLoad %v4bool %v
205%118 = OpCompositeExtract %bool %117 0
206%119 = OpLoad %v4bool %v
207%120 = OpCompositeExtract %bool %119 3
208%121 = OpCompositeConstruct %v4bool %118 %true %true %120
209OpStore %result %121
210%122 = OpLoad %v4bool %v
211%123 = OpCompositeExtract %bool %122 0
212%124 = OpCompositeConstruct %v4bool %123 %true %false %true
213OpStore %result %124
214%125 = OpLoad %v4bool %v
215%126 = OpVectorShuffle %v3bool %125 %125 1 2 3
216%127 = OpCompositeExtract %bool %126 0
217%128 = OpCompositeExtract %bool %126 1
218%129 = OpCompositeExtract %bool %126 2
219%130 = OpCompositeConstruct %v4bool %true %127 %128 %129
220OpStore %result %130
221%131 = OpLoad %v4bool %v
222%132 = OpVectorShuffle %v2bool %131 %131 1 2
223%133 = OpCompositeExtract %bool %132 0
224%134 = OpCompositeExtract %bool %132 1
225%135 = OpCompositeConstruct %v4bool %false %133 %134 %true
226OpStore %result %135
227%136 = OpLoad %v4bool %v
228%137 = OpCompositeExtract %bool %136 1
229%138 = OpLoad %v4bool %v
230%139 = OpCompositeExtract %bool %138 3
231%140 = OpCompositeConstruct %v4bool %false %137 %true %139
232OpStore %result %140
233%141 = OpLoad %v4bool %v
234%142 = OpCompositeExtract %bool %141 1
235%143 = OpCompositeConstruct %v4bool %true %142 %true %true
236OpStore %result %143
237%144 = OpLoad %v4bool %v
238%145 = OpVectorShuffle %v2bool %144 %144 2 3
239%146 = OpCompositeExtract %bool %145 0
240%147 = OpCompositeExtract %bool %145 1
241%148 = OpCompositeConstruct %v4bool %false %false %146 %147
242OpStore %result %148
243%149 = OpLoad %v4bool %v
244%150 = OpCompositeExtract %bool %149 2
245%151 = OpCompositeConstruct %v4bool %false %false %150 %true
246OpStore %result %151
247%152 = OpLoad %v4bool %v
248%153 = OpCompositeExtract %bool %152 3
249%154 = OpCompositeConstruct %v4bool %false %true %true %153
250OpStore %result %154
251%156 = OpLoad %v4bool %result
252%155 = OpAny %bool %156
253OpSelectionMerge %161 None
254OpBranchConditional %155 %159 %160
255%159 = OpLabel
256%162 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
257%163 = OpLoad %v4float %162
258OpStore %157 %163
259OpBranch %161
260%160 = OpLabel
261%164 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
262%166 = OpLoad %v4float %164
263OpStore %157 %166
264OpBranch %161
265%161 = OpLabel
266%167 = OpLoad %v4float %157
267OpReturnValue %167
268OpFunctionEnd
269