• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1OpCapability Shader
2%1 = OpExtInstImport "GLSL.std.450"
3OpMemoryModel Logical GLSL450
4OpEntryPoint Fragment %main "main" %sk_Clockwise %sk_FragColor
5OpExecutionMode %main OriginUpperLeft
6OpName %sk_Clockwise "sk_Clockwise"
7OpName %sk_FragColor "sk_FragColor"
8OpName %_UniformBuffer "_UniformBuffer"
9OpMemberName %_UniformBuffer 0 "src"
10OpMemberName %_UniformBuffer 1 "dst"
11OpName %blend_overlay_component_Qhh2h2 "blend_overlay_component_Qhh2h2"
12OpName %blend_overlay_h4h4h4 "blend_overlay_h4h4h4"
13OpName %result "result"
14OpName %main "main"
15OpDecorate %sk_Clockwise BuiltIn FrontFacing
16OpDecorate %sk_FragColor RelaxedPrecision
17OpDecorate %sk_FragColor Location 0
18OpDecorate %sk_FragColor Index 0
19OpMemberDecorate %_UniformBuffer 0 Offset 0
20OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
21OpMemberDecorate %_UniformBuffer 1 Offset 16
22OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
23OpDecorate %_UniformBuffer Block
24OpDecorate %12 Binding 0
25OpDecorate %12 DescriptorSet 0
26OpDecorate %22 RelaxedPrecision
27OpDecorate %23 RelaxedPrecision
28OpDecorate %24 RelaxedPrecision
29OpDecorate %25 RelaxedPrecision
30OpDecorate %26 RelaxedPrecision
31OpDecorate %33 RelaxedPrecision
32OpDecorate %34 RelaxedPrecision
33OpDecorate %35 RelaxedPrecision
34OpDecorate %36 RelaxedPrecision
35OpDecorate %37 RelaxedPrecision
36OpDecorate %38 RelaxedPrecision
37OpDecorate %39 RelaxedPrecision
38OpDecorate %40 RelaxedPrecision
39OpDecorate %41 RelaxedPrecision
40OpDecorate %42 RelaxedPrecision
41OpDecorate %43 RelaxedPrecision
42OpDecorate %44 RelaxedPrecision
43OpDecorate %45 RelaxedPrecision
44OpDecorate %46 RelaxedPrecision
45OpDecorate %47 RelaxedPrecision
46OpDecorate %48 RelaxedPrecision
47OpDecorate %49 RelaxedPrecision
48OpDecorate %50 RelaxedPrecision
49OpDecorate %51 RelaxedPrecision
50OpDecorate %52 RelaxedPrecision
51OpDecorate %53 RelaxedPrecision
52OpDecorate %54 RelaxedPrecision
53OpDecorate %55 RelaxedPrecision
54OpDecorate %56 RelaxedPrecision
55OpDecorate %57 RelaxedPrecision
56OpDecorate %result RelaxedPrecision
57OpDecorate %64 RelaxedPrecision
58OpDecorate %65 RelaxedPrecision
59OpDecorate %67 RelaxedPrecision
60OpDecorate %68 RelaxedPrecision
61OpDecorate %71 RelaxedPrecision
62OpDecorate %72 RelaxedPrecision
63OpDecorate %74 RelaxedPrecision
64OpDecorate %75 RelaxedPrecision
65OpDecorate %78 RelaxedPrecision
66OpDecorate %79 RelaxedPrecision
67OpDecorate %81 RelaxedPrecision
68OpDecorate %82 RelaxedPrecision
69OpDecorate %85 RelaxedPrecision
70OpDecorate %86 RelaxedPrecision
71OpDecorate %88 RelaxedPrecision
72OpDecorate %89 RelaxedPrecision
73OpDecorate %90 RelaxedPrecision
74OpDecorate %91 RelaxedPrecision
75OpDecorate %92 RelaxedPrecision
76OpDecorate %93 RelaxedPrecision
77OpDecorate %94 RelaxedPrecision
78OpDecorate %95 RelaxedPrecision
79OpDecorate %96 RelaxedPrecision
80OpDecorate %97 RelaxedPrecision
81OpDecorate %99 RelaxedPrecision
82OpDecorate %100 RelaxedPrecision
83OpDecorate %101 RelaxedPrecision
84OpDecorate %102 RelaxedPrecision
85OpDecorate %103 RelaxedPrecision
86OpDecorate %104 RelaxedPrecision
87OpDecorate %105 RelaxedPrecision
88OpDecorate %106 RelaxedPrecision
89OpDecorate %107 RelaxedPrecision
90OpDecorate %108 RelaxedPrecision
91OpDecorate %109 RelaxedPrecision
92OpDecorate %110 RelaxedPrecision
93OpDecorate %111 RelaxedPrecision
94OpDecorate %112 RelaxedPrecision
95OpDecorate %113 RelaxedPrecision
96OpDecorate %114 RelaxedPrecision
97OpDecorate %122 RelaxedPrecision
98OpDecorate %126 RelaxedPrecision
99%bool = OpTypeBool
100%_ptr_Input_bool = OpTypePointer Input %bool
101%sk_Clockwise = OpVariable %_ptr_Input_bool Input
102%float = OpTypeFloat 32
103%v4float = OpTypeVector %float 4
104%_ptr_Output_v4float = OpTypePointer Output %v4float
105%sk_FragColor = OpVariable %_ptr_Output_v4float Output
106%_UniformBuffer = OpTypeStruct %v4float %v4float
107%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
108%12 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
109%v2float = OpTypeVector %float 2
110%_ptr_Function_v2float = OpTypePointer Function %v2float
111%17 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
112%float_2 = OpConstant %float 2
113%_ptr_Function_float = OpTypePointer Function %float
114%_ptr_Function_v4float = OpTypePointer Function %v4float
115%59 = OpTypeFunction %v4float %_ptr_Function_v4float %_ptr_Function_v4float
116%float_1 = OpConstant %float 1
117%v3float = OpTypeVector %float 3
118%void = OpTypeVoid
119%116 = OpTypeFunction %void
120%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
121%int = OpTypeInt 32 1
122%int_1 = OpConstant %int 1
123%int_0 = OpConstant %int 0
124%blend_overlay_component_Qhh2h2 = OpFunction %float None %17
125%18 = OpFunctionParameter %_ptr_Function_v2float
126%19 = OpFunctionParameter %_ptr_Function_v2float
127%20 = OpLabel
128%28 = OpVariable %_ptr_Function_float Function
129%22 = OpLoad %v2float %19
130%23 = OpCompositeExtract %float %22 0
131%24 = OpFMul %float %float_2 %23
132%25 = OpLoad %v2float %19
133%26 = OpCompositeExtract %float %25 1
134%27 = OpFOrdLessThanEqual %bool %24 %26
135OpSelectionMerge %32 None
136OpBranchConditional %27 %30 %31
137%30 = OpLabel
138%33 = OpLoad %v2float %18
139%34 = OpCompositeExtract %float %33 0
140%35 = OpFMul %float %float_2 %34
141%36 = OpLoad %v2float %19
142%37 = OpCompositeExtract %float %36 0
143%38 = OpFMul %float %35 %37
144OpStore %28 %38
145OpBranch %32
146%31 = OpLabel
147%39 = OpLoad %v2float %18
148%40 = OpCompositeExtract %float %39 1
149%41 = OpLoad %v2float %19
150%42 = OpCompositeExtract %float %41 1
151%43 = OpFMul %float %40 %42
152%44 = OpLoad %v2float %19
153%45 = OpCompositeExtract %float %44 1
154%46 = OpLoad %v2float %19
155%47 = OpCompositeExtract %float %46 0
156%48 = OpFSub %float %45 %47
157%49 = OpFMul %float %float_2 %48
158%50 = OpLoad %v2float %18
159%51 = OpCompositeExtract %float %50 1
160%52 = OpLoad %v2float %18
161%53 = OpCompositeExtract %float %52 0
162%54 = OpFSub %float %51 %53
163%55 = OpFMul %float %49 %54
164%56 = OpFSub %float %43 %55
165OpStore %28 %56
166OpBranch %32
167%32 = OpLabel
168%57 = OpLoad %float %28
169OpReturnValue %57
170OpFunctionEnd
171%blend_overlay_h4h4h4 = OpFunction %v4float None %59
172%60 = OpFunctionParameter %_ptr_Function_v4float
173%61 = OpFunctionParameter %_ptr_Function_v4float
174%62 = OpLabel
175%result = OpVariable %_ptr_Function_v4float Function
176%66 = OpVariable %_ptr_Function_v2float Function
177%69 = OpVariable %_ptr_Function_v2float Function
178%73 = OpVariable %_ptr_Function_v2float Function
179%76 = OpVariable %_ptr_Function_v2float Function
180%80 = OpVariable %_ptr_Function_v2float Function
181%83 = OpVariable %_ptr_Function_v2float Function
182%64 = OpLoad %v4float %60
183%65 = OpVectorShuffle %v2float %64 %64 0 3
184OpStore %66 %65
185%67 = OpLoad %v4float %61
186%68 = OpVectorShuffle %v2float %67 %67 0 3
187OpStore %69 %68
188%70 = OpFunctionCall %float %blend_overlay_component_Qhh2h2 %66 %69
189%71 = OpLoad %v4float %60
190%72 = OpVectorShuffle %v2float %71 %71 1 3
191OpStore %73 %72
192%74 = OpLoad %v4float %61
193%75 = OpVectorShuffle %v2float %74 %74 1 3
194OpStore %76 %75
195%77 = OpFunctionCall %float %blend_overlay_component_Qhh2h2 %73 %76
196%78 = OpLoad %v4float %60
197%79 = OpVectorShuffle %v2float %78 %78 2 3
198OpStore %80 %79
199%81 = OpLoad %v4float %61
200%82 = OpVectorShuffle %v2float %81 %81 2 3
201OpStore %83 %82
202%84 = OpFunctionCall %float %blend_overlay_component_Qhh2h2 %80 %83
203%85 = OpLoad %v4float %60
204%86 = OpCompositeExtract %float %85 3
205%88 = OpLoad %v4float %60
206%89 = OpCompositeExtract %float %88 3
207%90 = OpFSub %float %float_1 %89
208%91 = OpLoad %v4float %61
209%92 = OpCompositeExtract %float %91 3
210%93 = OpFMul %float %90 %92
211%94 = OpFAdd %float %86 %93
212%95 = OpCompositeConstruct %v4float %70 %77 %84 %94
213OpStore %result %95
214%96 = OpLoad %v4float %result
215%97 = OpVectorShuffle %v3float %96 %96 0 1 2
216%99 = OpLoad %v4float %61
217%100 = OpVectorShuffle %v3float %99 %99 0 1 2
218%101 = OpLoad %v4float %60
219%102 = OpCompositeExtract %float %101 3
220%103 = OpFSub %float %float_1 %102
221%104 = OpVectorTimesScalar %v3float %100 %103
222%105 = OpLoad %v4float %60
223%106 = OpVectorShuffle %v3float %105 %105 0 1 2
224%107 = OpLoad %v4float %61
225%108 = OpCompositeExtract %float %107 3
226%109 = OpFSub %float %float_1 %108
227%110 = OpVectorTimesScalar %v3float %106 %109
228%111 = OpFAdd %v3float %104 %110
229%112 = OpFAdd %v3float %97 %111
230%113 = OpLoad %v4float %result
231%114 = OpVectorShuffle %v4float %113 %112 4 5 6 3
232OpStore %result %114
233OpReturnValue %114
234OpFunctionEnd
235%main = OpFunction %void None %116
236%117 = OpLabel
237%123 = OpVariable %_ptr_Function_v4float Function
238%127 = OpVariable %_ptr_Function_v4float Function
239%118 = OpAccessChain %_ptr_Uniform_v4float %12 %int_1
240%122 = OpLoad %v4float %118
241OpStore %123 %122
242%124 = OpAccessChain %_ptr_Uniform_v4float %12 %int_0
243%126 = OpLoad %v4float %124
244OpStore %127 %126
245%128 = OpFunctionCall %v4float %blend_overlay_h4h4h4 %123 %127
246OpStore %sk_FragColor %128
247OpReturn
248OpFunctionEnd
249