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