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