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