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