blob: 901cd10a482e4adb6c973414c551b664794de17d [file] [log] [blame]
Mike Klein267f5072019-06-03 16:27:46 -05001A8 over A8
2r0 = load8 arg(0)
3r1 = splat 3B808081 (0.0039215689)
4r0 = to_f32 r0
5r0 = mul_f32 r1 r0
6r2 = load8 arg(1)
7r2 = to_f32 r2
8r2 = mul_f32 r1 r2
9r1 = splat 3F800000 (1)
10r1 = sub_f32 r1 r0
11r1 = mad_f32 r2 r1 r0
12r2 = splat 437F0000 (255)
13r0 = splat 3F000000 (0.5)
14r0 = mad_f32 r1 r2 r0
15r0 = to_i32 r0
16store8 arg(1) r0
17
18A8 over G8
19r0 = splat 0 (0)
20r1 = load8 arg(0)
21r2 = splat 3B808081 (0.0039215689)
22r1 = to_f32 r1
23r1 = mul_f32 r2 r1
24r3 = load8 arg(1)
25r3 = to_f32 r3
26r3 = mul_f32 r2 r3
27r2 = splat 3F800000 (1)
28r2 = sub_f32 r2 r1
29r2 = mad_f32 r3 r2 r0
30r3 = splat 3E59B3D0 (0.21259999)
31r0 = splat 3F371759 (0.71520001)
32r1 = splat 3D93DD98 (0.0722)
33r1 = mul_f32 r2 r1
34r1 = mad_f32 r2 r0 r1
35r1 = mad_f32 r2 r3 r1
36r3 = splat 437F0000 (255)
37r2 = splat 3F000000 (0.5)
38r2 = mad_f32 r1 r3 r2
39r2 = to_i32 r2
40store8 arg(1) r2
41
42A8 over RGBA_8888
43r0 = splat 0 (0)
44r1 = load8 arg(0)
45r2 = splat 3B808081 (0.0039215689)
46r1 = to_f32 r1
47r1 = mul_f32 r2 r1
48r3 = load32 arg(1)
49r4 = splat FF (3.5733111e-43)
50r5 = bit_and r3 r4
51r5 = to_f32 r5
52r5 = mul_f32 r2 r5
53r6 = shr r3 8 (1.1210388e-44)
54r6 = bit_and r6 r4
55r6 = to_f32 r6
56r6 = mul_f32 r2 r6
57r7 = shr r3 10 (2.2420775e-44)
58r7 = bit_and r7 r4
59r7 = to_f32 r7
60r7 = mul_f32 r2 r7
61r3 = shr r3 18 (3.3631163e-44)
62r3 = to_f32 r3
63r3 = mul_f32 r2 r3
64r2 = splat 3F800000 (1)
65r2 = sub_f32 r2 r1
66r5 = mad_f32 r5 r2 r0
67r6 = mad_f32 r6 r2 r0
68r7 = mad_f32 r7 r2 r0
69r2 = mad_f32 r3 r2 r1
70r3 = splat 437F0000 (255)
71r1 = splat 3F000000 (0.5)
72r5 = mad_f32 r5 r3 r1
73r5 = to_i32 r5
74r6 = mad_f32 r6 r3 r1
75r6 = to_i32 r6
76r6 = shl r6 8 (1.1210388e-44)
77r7 = mad_f32 r7 r3 r1
78r7 = to_i32 r7
79r7 = shl r7 10 (2.2420775e-44)
80r1 = mad_f32 r2 r3 r1
81r1 = to_i32 r1
82r1 = shl r1 18 (3.3631163e-44)
83r6 = bit_or r5 r6
84r6 = bit_or r6 r7
85r6 = bit_or r6 r1
86store32 arg(1) r6
87
88G8 over A8
89r0 = splat 3B808081 (0.0039215689)
90r1 = splat 3F800000 (1)
91r2 = load8 arg(1)
92r2 = to_f32 r2
93r2 = mul_f32 r0 r2
94r0 = sub_f32 r1 r1
95r0 = mad_f32 r2 r0 r1
96r2 = splat 437F0000 (255)
97r1 = splat 3F000000 (0.5)
98r1 = mad_f32 r0 r2 r1
99r1 = to_i32 r1
100store8 arg(1) r1
101
102G8 over G8
103r0 = load8 arg(0)
104r1 = splat 3B808081 (0.0039215689)
105r0 = to_f32 r0
106r0 = mul_f32 r1 r0
107r2 = splat 3F800000 (1)
108r3 = load8 arg(1)
109r3 = to_f32 r3
110r3 = mul_f32 r1 r3
111r2 = sub_f32 r2 r2
112r2 = mad_f32 r3 r2 r0
113r3 = splat 3E59B3D0 (0.21259999)
114r0 = splat 3F371759 (0.71520001)
115r1 = splat 3D93DD98 (0.0722)
116r1 = mul_f32 r2 r1
117r1 = mad_f32 r2 r0 r1
118r1 = mad_f32 r2 r3 r1
119r3 = splat 437F0000 (255)
120r2 = splat 3F000000 (0.5)
121r2 = mad_f32 r1 r3 r2
122r2 = to_i32 r2
123store8 arg(1) r2
124
125G8 over RGBA_8888
126r0 = load8 arg(0)
127r1 = splat 3B808081 (0.0039215689)
128r0 = to_f32 r0
129r0 = mul_f32 r1 r0
130r2 = splat 3F800000 (1)
131r3 = load32 arg(1)
132r4 = splat FF (3.5733111e-43)
133r5 = bit_and r3 r4
134r5 = to_f32 r5
135r5 = mul_f32 r1 r5
136r6 = shr r3 8 (1.1210388e-44)
137r6 = bit_and r6 r4
138r6 = to_f32 r6
139r6 = mul_f32 r1 r6
140r7 = shr r3 10 (2.2420775e-44)
141r7 = bit_and r7 r4
142r7 = to_f32 r7
143r7 = mul_f32 r1 r7
144r3 = shr r3 18 (3.3631163e-44)
145r3 = to_f32 r3
146r3 = mul_f32 r1 r3
147r1 = sub_f32 r2 r2
148r5 = mad_f32 r5 r1 r0
149r6 = mad_f32 r6 r1 r0
150r7 = mad_f32 r7 r1 r0
151r1 = mad_f32 r3 r1 r2
152r3 = splat 437F0000 (255)
153r2 = splat 3F000000 (0.5)
154r5 = mad_f32 r5 r3 r2
155r5 = to_i32 r5
156r6 = mad_f32 r6 r3 r2
157r6 = to_i32 r6
158r6 = shl r6 8 (1.1210388e-44)
159r7 = mad_f32 r7 r3 r2
160r7 = to_i32 r7
161r7 = shl r7 10 (2.2420775e-44)
162r2 = mad_f32 r1 r3 r2
163r2 = to_i32 r2
164r2 = shl r2 18 (3.3631163e-44)
165r6 = bit_or r5 r6
166r6 = bit_or r6 r7
167r6 = bit_or r6 r2
168store32 arg(1) r6
169
170RGBA_8888 over A8
171r0 = load32 arg(0)
172r1 = splat 3B808081 (0.0039215689)
173r0 = shr r0 18 (3.3631163e-44)
174r0 = to_f32 r0
175r0 = mul_f32 r1 r0
176r2 = load8 arg(1)
177r2 = to_f32 r2
178r2 = mul_f32 r1 r2
179r1 = splat 3F800000 (1)
180r1 = sub_f32 r1 r0
181r1 = mad_f32 r2 r1 r0
182r2 = splat 437F0000 (255)
183r0 = splat 3F000000 (0.5)
184r0 = mad_f32 r1 r2 r0
185r0 = to_i32 r0
186store8 arg(1) r0
187
188RGBA_8888 over G8
189r0 = load32 arg(0)
190r1 = splat FF (3.5733111e-43)
191r2 = bit_and r0 r1
192r3 = splat 3B808081 (0.0039215689)
193r2 = to_f32 r2
194r2 = mul_f32 r3 r2
195r4 = shr r0 8 (1.1210388e-44)
196r4 = bit_and r4 r1
197r4 = to_f32 r4
198r4 = mul_f32 r3 r4
199r5 = shr r0 10 (2.2420775e-44)
200r5 = bit_and r5 r1
201r5 = to_f32 r5
202r5 = mul_f32 r3 r5
203r0 = shr r0 18 (3.3631163e-44)
204r0 = to_f32 r0
205r0 = mul_f32 r3 r0
206r1 = load8 arg(1)
207r1 = to_f32 r1
208r1 = mul_f32 r3 r1
209r3 = splat 3F800000 (1)
210r3 = sub_f32 r3 r0
211r2 = mad_f32 r1 r3 r2
212r4 = mad_f32 r1 r3 r4
213r3 = mad_f32 r1 r3 r5
214r1 = splat 3E59B3D0 (0.21259999)
215r5 = splat 3F371759 (0.71520001)
216r0 = splat 3D93DD98 (0.0722)
217r0 = mul_f32 r3 r0
218r0 = mad_f32 r4 r5 r0
219r0 = mad_f32 r2 r1 r0
220r1 = splat 437F0000 (255)
221r2 = splat 3F000000 (0.5)
222r2 = mad_f32 r0 r1 r2
223r2 = to_i32 r2
224store8 arg(1) r2
225
226RGBA_8888 over RGBA_8888
227r0 = load32 arg(0)
228r1 = splat FF (3.5733111e-43)
229r2 = bit_and r0 r1
230r3 = splat 3B808081 (0.0039215689)
231r2 = to_f32 r2
232r2 = mul_f32 r3 r2
233r4 = shr r0 8 (1.1210388e-44)
234r4 = bit_and r4 r1
235r4 = to_f32 r4
236r4 = mul_f32 r3 r4
237r5 = shr r0 10 (2.2420775e-44)
238r5 = bit_and r5 r1
239r5 = to_f32 r5
240r5 = mul_f32 r3 r5
241r0 = shr r0 18 (3.3631163e-44)
242r0 = to_f32 r0
243r0 = mul_f32 r3 r0
244r6 = load32 arg(1)
245r7 = bit_and r6 r1
246r7 = to_f32 r7
247r7 = mul_f32 r3 r7
248r8 = shr r6 8 (1.1210388e-44)
249r8 = bit_and r8 r1
250r8 = to_f32 r8
251r8 = mul_f32 r3 r8
252r9 = shr r6 10 (2.2420775e-44)
253r9 = bit_and r9 r1
254r9 = to_f32 r9
255r9 = mul_f32 r3 r9
256r6 = shr r6 18 (3.3631163e-44)
257r6 = to_f32 r6
258r6 = mul_f32 r3 r6
259r3 = splat 3F800000 (1)
260r3 = sub_f32 r3 r0
261r7 = mad_f32 r7 r3 r2
262r8 = mad_f32 r8 r3 r4
263r9 = mad_f32 r9 r3 r5
264r3 = mad_f32 r6 r3 r0
265r6 = splat 437F0000 (255)
266r0 = splat 3F000000 (0.5)
267r7 = mad_f32 r7 r6 r0
268r7 = to_i32 r7
269r8 = mad_f32 r8 r6 r0
270r8 = to_i32 r8
271r8 = shl r8 8 (1.1210388e-44)
272r9 = mad_f32 r9 r6 r0
273r9 = to_i32 r9
274r9 = shl r9 10 (2.2420775e-44)
275r0 = mad_f32 r3 r6 r0
276r0 = to_i32 r0
277r0 = shl r0 18 (3.3631163e-44)
278r8 = bit_or r7 r8
279r8 = bit_or r8 r9
280r8 = bit_or r8 r0
281store32 arg(1) r8
282